Fixing whitespace problems git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111750 91177308-0d34-0410-b5e6-96231b3b80d8 
diff --git a/include/__bit_reference b/include/__bit_reference index 9956a39..a2fc809 100644 --- a/include/__bit_reference +++ b/include/__bit_reference 
@@ -50,7 +50,7 @@  *__seg_ &= ~__mask_;  return *this;  } -  +  _LIBCPP_INLINE_VISIBILITY  __bit_reference& operator=(const __bit_reference& __x) {return operator=(static_cast<bool>(__x));}   @@ -1074,14 +1074,14 @@  }  return *this;  } -  +  _LIBCPP_INLINE_VISIBILITY __bit_iterator operator++(int)  {  __bit_iterator __tmp = *this;  ++(*this);  return __tmp;  } -  +  _LIBCPP_INLINE_VISIBILITY __bit_iterator& operator--()  {  if (__ctz_ != 0) @@ -1093,14 +1093,14 @@  }  return *this;  } -  +  _LIBCPP_INLINE_VISIBILITY __bit_iterator operator--(int)  {  __bit_iterator __tmp = *this;  --(*this);  return __tmp;  } -  +  _LIBCPP_INLINE_VISIBILITY __bit_iterator& operator+=(difference_type __n)  {  if (__n >= 0) @@ -1112,19 +1112,19 @@  __ctz_ = static_cast<unsigned>((__n + __ctz_) % __bits_per_word);  return *this;  } -  +  _LIBCPP_INLINE_VISIBILITY __bit_iterator& operator-=(difference_type __n)  {  return *this += -__n;  } -  +  _LIBCPP_INLINE_VISIBILITY __bit_iterator operator+(difference_type __n) const  {  __bit_iterator __t(*this);  __t += __n;  return __t;  } -  +  _LIBCPP_INLINE_VISIBILITY __bit_iterator operator-(difference_type __n) const  {  __bit_iterator __t(*this); 
diff --git a/include/__config b/include/__config index 31369c8..2bba0e9 100644 --- a/include/__config +++ b/include/__config 
@@ -26,26 +26,26 @@  #if __LITTLE_ENDIAN__  #define _LIBCPP_LITTLE_ENDIAN 1  #define _LIBCPP_BIG_ENDIAN 0 -#endif -#endif +#endif // __LITTLE_ENDIAN__ +#endif // __LITTLE_ENDIAN__    #ifdef __BIG_ENDIAN__  #if __BIG_ENDIAN__  #define _LIBCPP_LITTLE_ENDIAN 0  #define _LIBCPP_BIG_ENDIAN 1 -#endif -#endif +#endif // __BIG_ENDIAN__ +#endif // __BIG_ENDIAN__    #ifdef __FreeBSD__  # include <sys/endian.h>  # if _BYTE_ORDER == _LITTLE_ENDIAN  # define _LIBCPP_LITTLE_ENDIAN 1  # define _LIBCPP_BIG_ENDIAN 0 -# else +# else // _BYTE_ORDER == _LITTLE_ENDIAN  # define _LIBCPP_LITTLE_ENDIAN 0  # define _LIBCPP_BIG_ENDIAN 1 -# endif -#endif +# endif // _BYTE_ORDER == _LITTLE_ENDIAN +#endif // __FreeBSD__    #if !defined(_LIBCPP_LITTLE_ENDIAN) || !defined(_LIBCPP_BIG_ENDIAN)  # include <endian.h> @@ -55,10 +55,10 @@  # elif __BYTE_ORDER == __BIG_ENDIAN  # define _LIBCPP_LITTLE_ENDIAN 0  # define _LIBCPP_BIG_ENDIAN 1 -# else +# else // __BYTE_ORDER == __BIG_ENDIAN  # error unable to determine endian  # endif -#endif +#endif // !defined(_LIBCPP_LITTLE_ENDIAN) || !defined(_LIBCPP_BIG_ENDIAN)    #ifndef _LIBCPP_VISIBILITY_TAG  #define _LIBCPP_VISIBILITY_TAG 1 @@ -67,10 +67,10 @@  #if _LIBCPP_VISIBILITY_TAG  #define _LIBCPP_HIDDEN __attribute__ ((__visibility__("hidden")))  #define _LIBCPP_VISIBLE __attribute__ ((__visibility__("default"))) -#else +#else // _LIBCPP_VISIBILITY_TAG  #define _LIBCPP_HIDDEN  #define _LIBCPP_VISIBLE -#endif +#endif // _LIBCPP_VISIBILITY_TAG    #ifndef _LIBCPP_INLINE_VISIBILITY  #define _LIBCPP_INLINE_VISIBILITY __attribute__ ((__visibility__("hidden"), __always_inline__)) @@ -108,7 +108,7 @@  #define _LIBCPP_HAS_NO_UNICODE_CHARS  #define _LIBCPP_HAS_NO_VARIADICS   -#else +#else // __GXX_EXPERIMENTAL_CXX0X__    #if __has_feature(cxx_rvalue_references)  #define _LIBCPP_MOVE @@ -121,7 +121,7 @@  #if !(__has_feature(cxx_deleted_functions))  #define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS  #define _LIBCPP_HAS_NO_DELETED_FUNCTIONS -#endif +#endif // !(__has_feature(cxx_deleted_functions))    #if !(__has_feature(cxx_nullptr))  #define _LIBCPP_HAS_NO_NULLPTR @@ -135,7 +135,7 @@  #define _LIBCPP_HAS_NO_VARIADICS  #endif   -#endif +#endif // __GXX_EXPERIMENTAL_CXX0X__    #elif defined(__GNUC__)   @@ -156,7 +156,7 @@  #define _LIBCPP_HAS_NO_UNICODE_CHARS  #define _LIBCPP_HAS_NO_VARIADICS   -#else +#else // __GXX_EXPERIMENTAL_CXX0X__    #if __GNUC__ >= 4 && __GNUC_MINOR__ >= 3  #define _LIBCPP_MOVE @@ -173,21 +173,21 @@  #define _LIBCPP_HAS_NO_DELETED_FUNCTIONS  #define _LIBCPP_HAS_NO_UNICODE_CHARS  #define _LIBCPP_HAS_NO_VARIADICS -#endif +#endif // !(__GNUC__ >= 4 && __GNUC_MINOR__ >= 4)    #if !(__GNUC__ >= 4 && __GNUC_MINOR__ >= 6)  #define _LIBCPP_HAS_NO_NULLPTR  #endif   -#endif +#endif // __GXX_EXPERIMENTAL_CXX0X__   -#endif +#endif // defined(__GNUC__)    #ifdef _LIBCPP_HAS_NO_STRONG_USING  #define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {  #define _LIBCPP_END_NAMESPACE_STD }  #define _STD std -#else +#else // _LIBCPP_HAS_NO_STRONG_USING  #define _LIBCPP_BEGIN_NAMESPACE_STD namespace std { namespace _LIBCPP_NAMESPACE {  #define _LIBCPP_END_NAMESPACE_STD } }  #define _STD std::_LIBCPP_NAMESPACE @@ -198,12 +198,12 @@  using namespace _LIBCPP_NAMESPACE __attribute__((__strong__));  }   -#endif +#endif // _LIBCPP_HAS_NO_STRONG_USING    #ifdef _LIBCPP_HAS_NO_UNICODE_CHARS  typedef unsigned short char16_t;  typedef unsigned int char32_t; -#endif +#endif // _LIBCPP_HAS_NO_UNICODE_CHARS    #ifdef _LIBCPP_HAS_NO_STATIC_ASSERT   @@ -214,7 +214,7 @@  typedef __static_assert_check<sizeof(__static_assert_test<(__b)>)> \  _LIBCPP_CONCAT(__t, __LINE__)   -#endif +#endif // _LIBCPP_HAS_NO_STATIC_ASSERT    #ifdef _LIBCPP_HAS_NO_DECLTYPE  #define decltype(x) __typeof__(x) 
diff --git a/include/__functional_03 b/include/__functional_03 index f2880ad..b906762 100644 --- a/include/__functional_03 +++ b/include/__functional_03 
@@ -246,7 +246,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const = 0;  virtual const std::type_info& target_type() const = 0; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R, class _A0> @@ -265,7 +265,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const = 0;  virtual const std::type_info& target_type() const = 0; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R, class _A0, class _A1> @@ -284,7 +284,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const = 0;  virtual const std::type_info& target_type() const = 0; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R, class _A0, class _A1, class _A2> @@ -303,7 +303,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const = 0;  virtual const std::type_info& target_type() const = 0; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _FD, class _Alloc, class _FB> class __func; @@ -324,7 +324,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const;  virtual const std::type_info& target_type() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _F, class _Alloc, class _R> @@ -388,7 +388,7 @@  return typeid(_F);  }   -#endif +#endif // _LIBCPP_NO_RTTI    template<class _F, class _Alloc, class _R, class _A0>  class __func<_F, _Alloc, _R(_A0)> @@ -406,7 +406,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const;  virtual const std::type_info& target_type() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _F, class _Alloc, class _R, class _A0> @@ -470,7 +470,7 @@  return typeid(_F);  }   -#endif +#endif // _LIBCPP_NO_RTTI    template<class _F, class _Alloc, class _R, class _A0, class _A1>  class __func<_F, _Alloc, _R(_A0, _A1)> @@ -488,7 +488,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const;  virtual const std::type_info& target_type() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _F, class _Alloc, class _R, class _A0, class _A1> @@ -552,7 +552,7 @@  return typeid(_F);  }   -#endif +#endif // _LIBCPP_NO_RTTI    template<class _F, class _Alloc, class _R, class _A0, class _A1, class _A2>  class __func<_F, _Alloc, _R(_A0, _A1, _A2)> @@ -570,7 +570,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const;  virtual const std::type_info& target_type() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _F, class _Alloc, class _R, class _A0, class _A1, class _A2> @@ -634,7 +634,7 @@  return typeid(_F);  }   -#endif +#endif // _LIBCPP_NO_RTTI    } // __function   @@ -706,7 +706,7 @@  const std::type_info& target_type() const;  template <typename _T> _T* target();  template <typename _T> const _T* target() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R> @@ -882,7 +882,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__f_ == 0)  throw bad_function_call(); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return (*__f_)();  }   @@ -917,7 +917,7 @@  return (const _T*)__f_->target(typeid(_T));  }   -#endif +#endif // _LIBCPP_NO_RTTI    template<class _R, class _A0>  class function<_R(_A0)> @@ -998,7 +998,7 @@  const std::type_info& target_type() const;  template <typename _T> _T* target();  template <typename _T> const _T* target() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R, class _A0> @@ -1174,7 +1174,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__f_ == 0)  throw bad_function_call(); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return (*__f_)(__a0);  }   @@ -1209,7 +1209,7 @@  return (const _T*)__f_->target(typeid(_T));  }   -#endif +#endif // _LIBCPP_NO_RTTI    template<class _R, class _A0, class _A1>  class function<_R(_A0, _A1)> @@ -1290,7 +1290,7 @@  const std::type_info& target_type() const;  template <typename _T> _T* target();  template <typename _T> const _T* target() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R, class _A0, class _A1> @@ -1466,7 +1466,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__f_ == 0)  throw bad_function_call(); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return (*__f_)(__a0, __a1);  }   @@ -1501,7 +1501,7 @@  return (const _T*)__f_->target(typeid(_T));  }   -#endif +#endif // _LIBCPP_NO_RTTI    template<class _R, class _A0, class _A1, class _A2>  class function<_R(_A0, _A1, _A2)> @@ -1581,7 +1581,7 @@  const std::type_info& target_type() const;  template <typename _T> _T* target();  template <typename _T> const _T* target() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R, class _A0, class _A1, class _A2> @@ -1758,7 +1758,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__f_ == 0)  throw bad_function_call(); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return (*__f_)(__a0, __a1, __a2);  }   @@ -1793,29 +1793,29 @@  return (const _T*)__f_->target(typeid(_T));  }   -#endif +#endif // _LIBCPP_NO_RTTI   -template <class _F>  +template <class _F>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator==(const function<_F>& __f, nullptr_t) {return !__f;}   -template <class _F>  +template <class _F>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator==(nullptr_t, const function<_F>& __f) {return !__f;}   -template <class _F>  +template <class _F>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator!=(const function<_F>& __f, nullptr_t) {return (bool)__f;}   -template <class _F>  +template <class _F>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator!=(nullptr_t, const function<_F>& __f) {return (bool)__f;}   -template <class _F>  +template <class _F>  inline _LIBCPP_INLINE_VISIBILITY  void  swap(function<_F>& __x, function<_F>& __y) @@ -1868,7 +1868,6 @@  typedef typename result_of<_Ti(_Uj...)>::type type;  };   -  template <class _Ti, class ..._Uj, size_t ..._Indx>  inline _LIBCPP_INLINE_VISIBILITY  typename __mu_return1<true, _Ti, _Uj...>::type @@ -2006,7 +2005,7 @@  return __invoke(__f, __mu(get<_Indx>(__bound_args), __args)...);  }   -template<class _F, class ..._BoundArgs>  +template<class _F, class ..._BoundArgs>  class __bind  {  _F __f_; @@ -2024,7 +2023,7 @@  operator()(_Args&& ...__args)  {  // compiler bug workaround - return __apply_functor(__f_, __bound_args_, __indices(),  + return __apply_functor(__f_, __bound_args_, __indices(),  tuple<_Args&&...>(__args...));  }   @@ -2032,15 +2031,15 @@  typename __bind_return<_F, tuple<_BoundArgs...>, tuple<_Args&&...> >::type  operator()(_Args&& ...__args) const  { - return __apply_functor(__f_, __bound_args_, __indices(),  + return __apply_functor(__f_, __bound_args_, __indices(),  tuple<_Args&&...>(__args...));  }  };   -template<class _F, class ..._BoundArgs>  +template<class _F, class ..._BoundArgs>  struct __is_bind_expression<__bind<_F, _BoundArgs...> > : public true_type {};   -template<class _R, class _F, class ..._BoundArgs>  +template<class _R, class _F, class ..._BoundArgs>  class __bind_r  : public __bind<_F, _BoundArgs...>  { @@ -2068,10 +2067,10 @@  }  };   -template<class _R, class _F, class ..._BoundArgs>  +template<class _R, class _F, class ..._BoundArgs>  struct __is_bind_expression<__bind_r<_R, _F, _BoundArgs...> > : public true_type {};   -template<class _F, class ..._BoundArgs>  +template<class _F, class ..._BoundArgs>  inline _LIBCPP_INLINE_VISIBILITY  __bind<typename decay<_F>::type, typename decay<_BoundArgs>::type...>  bind(_F&& __f, _BoundArgs&&... __bound_args) @@ -2080,7 +2079,7 @@  return type(_STD::forward<_F>(__f), _STD::forward<_BoundArgs>(__bound_args)...);  }   -template<class _R, class _F, class ..._BoundArgs>  +template<class _R, class _F, class ..._BoundArgs>  inline _LIBCPP_INLINE_VISIBILITY  __bind_r<_R, typename decay<_F>::type, typename decay<_BoundArgs>::type...>  bind(_F&& __f, _BoundArgs&&... __bound_args) @@ -2090,4 +2089,4 @@  }  */   -#endif +#endif // _LIBCPP_FUNCTIONAL_03 
diff --git a/include/__functional_base b/include/__functional_base index fa8cfef..2746867 100644 --- a/include/__functional_base +++ b/include/__functional_base 
@@ -514,7 +514,7 @@  #ifdef _LIBCPP_MOVE  template <class _Tp> void ref(const _Tp&& __t);// = delete; // LWG 688  template <class _Tp> void cref(const _Tp&& __t);// = delete; // LWG 688 -#endif +#endif // _LIBCPP_MOVE    #endif // _LIBCPP_HAS_NO_VARIADICS   
diff --git a/include/__functional_base_03 b/include/__functional_base_03 index 0493151..19e7414 100644 --- a/include/__functional_base_03 +++ b/include/__functional_base_03 
@@ -235,84 +235,84 @@  // __invoke    // __ref_return0 -//  +//  // template <class _Tp, bool _HasResultType>  // struct ________ref_return0 // _HasResultType is true  // {  // typedef typename _Tp::result_type type;  // }; -//  +//  // template <class _Tp>  // struct ________ref_return0<_Tp, false>  // {  // typedef void type;  // }; -//  +//  // template <class _Tp, bool _IsClass>  // struct ____ref_return0 // _IsClass is true  // : public ________ref_return0<_Tp, __has_result_type<typename remove_cv<_Tp>::type>::value>  // {  // }; -//  +//  // template <class _Tp, bool _HasResultType>  // struct ______ref_return0 // _HasResultType is true  // {  // typedef typename __callable_type<_Tp>::result_type type;  // }; -//  +//  // template <class _Tp>  // struct ______ref_return0<_Tp, false> // pointer to member data  // {  // typedef void type;  // }; -//  +//  // template <class _Tp>  // struct ____ref_return0<_Tp, false>  // : public ______ref_return0<typename remove_cv<_Tp>::type,  // __has_result_type<__callable_type<typename remove_cv<_Tp>::type> >::value>  // {  // }; -//  +//  // template <class _Tp>  // struct __ref_return0  // : public ____ref_return0<typename remove_reference<_Tp>::type,  // is_class<typename remove_reference<_Tp>::type>::value>  // {  // }; -//  +//  // __ref_return1 -//  +//  // template <class _Tp, bool _IsClass, class _A0>  // struct ____ref_return1 // _IsClass is true  // {  // typedef typename result_of<_Tp(_A0)>::type type;  // }; -//  +//  // template <class _Tp, bool _HasResultType, class _A0>  // struct ______ref_return1 // _HasResultType is true  // {  // typedef typename __callable_type<_Tp>::result_type type;  // }; -//  +//  // template <class _Tp, class _A0, bool>  // struct __ref_return1_member_data1; -//  +//  // template <class _R, class _C, class _A0>  // struct __ref_return1_member_data1<_R _C::*, _A0, true>  // {  // typedef typename __apply_cv<_A0, _R>::type& type;  // }; -//  +//  // template <class _R, class _C, class _A0>  // struct __ref_return1_member_data1<_R _C::*, _A0, false>  // {  // static _A0 __a;  // typedef typename __apply_cv<decltype(*__a), _R>::type& type;  // }; -//  +//  // template <class _Tp, class _A0>  // struct __ref_return1_member_data; -//  +//  // template <class _R, class _C, class _A0>  // struct __ref_return1_member_data<_R _C::*, _A0>  // : public __ref_return1_member_data1<_R _C::*, _A0, @@ -320,90 +320,90 @@  // typename remove_cv<typename remove_reference<_A0>::type>::type>::value>  // {  // }; -//  +//  // template <class _Tp, class _A0>  // struct ______ref_return1<_Tp, false, _A0> // pointer to member data  // : public __ref_return1_member_data<typename remove_cv<_Tp>::type, _A0>  // {  // }; -//  +//  // template <class _Tp, class _A0>  // struct ____ref_return1<_Tp, false, _A0>  // : public ______ref_return1<typename remove_cv<_Tp>::type,  // __has_result_type<__callable_type<typename remove_cv<_Tp>::type> >::value, _A0>  // {  // }; -//  +//  // template <class _Tp, class _A0>  // struct __ref_return1  // : public ____ref_return1<typename remove_reference<_Tp>::type,  // is_class<typename remove_reference<_Tp>::type>::value, _A0>  // {  // }; -//  +//  // __ref_return2 -//  +//  // template <class _Tp, bool _IsClass, class _A0, class _A1>  // struct ____ref_return2 // _IsClass is true  // {  // typedef typename result_of<_Tp(_A0, _A1)>::type type;  // }; -//  +//  // template <class _Tp, bool _HasResultType, class _A0, class _A1>  // struct ______ref_return2 // _HasResultType is true  // {  // typedef typename __callable_type<_Tp>::result_type type;  // }; -//  +//  // template <class _Tp>  // struct ______ref_return2<_Tp, false, class _A0, class _A1> // pointer to member data  // {  // static_assert(sizeof(_Tp) == 0, "An attempt has been made to `call` a pointer"  // " to member data with too many arguments.");  // }; -//  +//  // template <class _Tp, class _A0, class _A1>  // struct ____ref_return2<_Tp, false, _A0, _A1>  // : public ______ref_return2<typename remove_cv<_Tp>::type,  // __has_result_type<__callable_type<typename remove_cv<_Tp>::type> >::value, _A0, _A1>  // {  // }; -//  +//  // template <class _Tp, class _A0, class _A1>  // struct __ref_return2  // : public ____ref_return2<typename remove_reference<_Tp>::type,  // is_class<typename remove_reference<_Tp>::type>::value, _A0, _A1>  // {  // }; -//  +//  // __ref_return3 -//  +//  // template <class _Tp, bool _IsClass, class _A0, class _A1, class _A2>  // struct ____ref_return3 // _IsClass is true  // {  // typedef typename result_of<_Tp(_A0, _A1, _A2)>::type type;  // }; -//  +//  // template <class _Tp, bool _HasResultType, class _A0, class _A1, class _A2>  // struct ______ref_return3 // _HasResultType is true  // {  // typedef typename __callable_type<_Tp>::result_type type;  // }; -//  +//  // template <class _Tp>  // struct ______ref_return3<_Tp, false, class _A0, class _A1, class _A2> // pointer to member data  // {  // static_assert(sizeof(_Tp) == 0, "An attempt has been made to `call` a pointer"  // " to member data with too many arguments.");  // }; -//  +//  // template <class _Tp, class _A0, class _A1, class _A2>  // struct ____ref_return3<_Tp, false, _A0, _A1, _A2>  // : public ______ref_return3<typename remove_cv<_Tp>::type,  // __has_result_type<__callable_type<typename remove_cv<_Tp>::type> >::value, _A0, _A1, _A2>  // {  // }; -//  +//  // template <class _Tp, class _A0, class _A1, class _A2>  // struct __ref_return3  // : public ____ref_return3<typename remove_reference<_Tp>::type, @@ -411,7 +411,6 @@  // {  // };   -  // first bullet    template <class _R, class _T, class _T1> @@ -911,7 +910,7 @@  // {  // return __f();  // } -//  +//  // template <class _R, class _F, class _A0>  // inline _LIBCPP_INLINE_VISIBILITY  // typename enable_if @@ -923,7 +922,7 @@  // {  // return __f(__a0);  // } -//  +//  // template <class _R, class _F, class _A0, class _A1>  // inline _LIBCPP_INLINE_VISIBILITY  // _R @@ -931,7 +930,7 @@  // {  // return __f(__a0, __a1);  // } -//  +//  // template <class _R, class _F, class _A0, class _A1, class _A2>  // inline _LIBCPP_INLINE_VISIBILITY  // _R @@ -1081,4 +1080,4 @@  return cref(__t.get());  }   -#endif +#endif // _LIBCPP_FUNCTIONAL_BASE_03 
diff --git a/include/__hash_table b/include/__hash_table index 42fe365..8773100 100644 --- a/include/__hash_table +++ b/include/__hash_table 
@@ -354,7 +354,7 @@  __x.size() = 0;  }   -#endif +#endif // _LIBCPP_MOVE    size_type& size() {return __data_.first();}  size_type size() const {return __data_.first();} @@ -489,7 +489,7 @@  #ifdef _LIBCPP_MOVE  __hash_table(__hash_table&& __u);  __hash_table(__hash_table&& __u, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE  ~__hash_table();    __hash_table& operator=(const __hash_table& __u); @@ -519,24 +519,24 @@  iterator __emplace_multi(_Args&&... __args);  template <class... _Args>  iterator __emplace_hint_multi(const_iterator __p, _Args&&... __args); -#endif +#endif // _LIBCPP_MOVE    pair<iterator, bool> __insert_unique(const value_type& __x);    #ifdef _LIBCPP_MOVE  template <class _P>  pair<iterator, bool> __insert_unique(_P&& __x); -#endif +#endif // _LIBCPP_MOVE    #ifdef _LIBCPP_MOVE  template <class _P>  iterator __insert_multi(_P&& __x);  template <class _P>  iterator __insert_multi(const_iterator __p, _P&& __x); -#else +#else // _LIBCPP_MOVE  iterator __insert_multi(const value_type& __x);  iterator __insert_multi(const_iterator __p, const value_type& __x); -#endif +#endif // _LIBCPP_MOVE    void clear();  void rehash(size_type __n); @@ -619,7 +619,7 @@  template <class ..._Args>  __node_holder __construct_node(_Args&& ...__args);  __node_holder __construct_node(value_type&& __v, size_t __hash); -#else +#else // _LIBCPP_MOVE  __node_holder __construct_node(const value_type& __v);  #endif  __node_holder __construct_node(const value_type& __v, size_t __hash); @@ -777,7 +777,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Hash, class _Equal, class _Alloc>  __hash_table<_Tp, _Hash, _Equal, _Alloc>::~__hash_table() @@ -886,7 +886,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  const_iterator __i = __u.begin();  while (__cache != nullptr && __u.size() != 0)  { @@ -902,7 +902,7 @@  __deallocate(__cache);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __deallocate(__cache);  }  const_iterator __i = __u.begin(); @@ -926,7 +926,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Hash, class _Equal, class _Alloc>  template <class _InputIterator> @@ -940,7 +940,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __cache != nullptr && __first != __last; ++__first)  {  __cache->__value_ = *__first; @@ -955,7 +955,7 @@  __deallocate(__cache);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __deallocate(__cache);  }  for (; __first != __last; ++__first) @@ -974,7 +974,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __cache != nullptr && __first != __last; ++__first)  {  __cache->__value_ = *__first; @@ -989,7 +989,7 @@  __deallocate(__cache);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __deallocate(__cache);  }  for (; __first != __last; ++__first) @@ -1130,7 +1130,7 @@  for (bool __found = false; __pn->__next_ != nullptr &&  __pn->__next_->__hash_ % __bc == __chash;  __pn = __pn->__next_) - {  + {  // __found key_eq() action  // false false loop  // true true loop @@ -1294,7 +1294,7 @@  return __r;  }   -#endif +#endif // _LIBCPP_MOVE    #ifdef _LIBCPP_MOVE   @@ -1321,7 +1321,7 @@  return __r;  }   -#else +#else // _LIBCPP_MOVE    template <class _Tp, class _Hash, class _Equal, class _Alloc>  typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::iterator @@ -1344,7 +1344,7 @@  return __r;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Hash, class _Equal, class _Alloc>  void @@ -1409,7 +1409,7 @@  __pp->__next_ = __np->__next_;  __np->__next_ = __bucket_list_[__chash]->__next_;  __bucket_list_[__chash]->__next_ = __cp; -  +  }  }  } @@ -1463,7 +1463,7 @@  return const_iterator(__nd);  }  } -  +  }  return end();  } @@ -1498,7 +1498,7 @@  return _STD::move(__h);  }   -#else +#else // _LIBCPP_MOVE    template <class _Tp, class _Hash, class _Equal, class _Alloc>  typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::__node_holder @@ -1513,7 +1513,7 @@  return _STD::move(__h);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Hash, class _Equal, class _Alloc>  typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::__node_holder 
diff --git a/include/__locale b/include/__locale index 743b393..27f7b0d 100644 --- a/include/__locale +++ b/include/__locale 
@@ -108,7 +108,7 @@  {  once_flag __flag_;  int32_t __id_; -  +  static int32_t __next_id;  public:  id() {} @@ -137,7 +137,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (!_STD::has_facet<_Facet>(__other))  throw runtime_error("locale::combine: locale missing facet"); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return locale(*this, &const_cast<_Facet&>(_STD::use_facet<_Facet>(__other)));  }   @@ -308,7 +308,7 @@  static const mask punct = _CTYPE_P;  static const mask xdigit = _CTYPE_X;  static const mask blank = _CTYPE_B; -#else /* !__APPLE__ */ +#else // __APPLE__  static const mask space = _ISspace;  static const mask print = _ISprint;  static const mask cntrl = _IScntrl; @@ -319,7 +319,7 @@  static const mask punct = _ISpunct;  static const mask xdigit = _ISxdigit;  static const mask blank = _ISblank; -#endif /* __APPLE__ */ +#endif // __APPLE__  static const mask alnum = alpha | digit;  static const mask graph = alnum | punct;   @@ -335,7 +335,7 @@  {  public:  typedef wchar_t char_type; -  +  _LIBCPP_ALWAYS_INLINE  explicit ctype(size_t __refs = 0)  : locale::facet(__refs) {} 
diff --git a/include/__mutex_base b/include/__mutex_base index 57088be..bcfce16 100644 --- a/include/__mutex_base +++ b/include/__mutex_base 
@@ -129,7 +129,7 @@  __u.__owns_ = false;  return *this;  } -#endif +#endif // _LIBCPP_MOVE    void lock();  bool try_lock(); 
diff --git a/include/__split_buffer b/include/__split_buffer index efcf7ed..1a48837 100644 --- a/include/__split_buffer +++ b/include/__split_buffer 
@@ -26,7 +26,7 @@  __split_buffer(const __split_buffer&);  __split_buffer& operator=(const __split_buffer&);  public: - typedef _Tp value_type;  + typedef _Tp value_type;  typedef _Allocator allocator_type;  typedef typename remove_reference<allocator_type>::type __alloc_rr;  typedef allocator_traits<__alloc_rr> __alloc_traits; @@ -62,7 +62,7 @@  __split_buffer(__split_buffer&& __c);  __split_buffer(__split_buffer&& __c, const __alloc_rr& __a);  __split_buffer& operator=(__split_buffer&& __c); -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY iterator begin() {return __begin_;}  _LIBCPP_INLINE_VISIBILITY const_iterator begin() const {return __begin_;} @@ -90,7 +90,7 @@  void push_back(value_type&& __x);  template <class... _Args>  void emplace_back(_Args&&... __args); -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY void pop_front() {__destruct_at_begin(__begin_+1);}  _LIBCPP_INLINE_VISIBILITY void pop_back() {__destruct_at_end(__end_-1);} @@ -425,7 +425,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  void @@ -463,7 +463,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __split_buffer<value_type, __alloc_rr&> __t(size(), 0, __alloc());  __t.__construct_at_end(move_iterator<pointer>(__begin_),  move_iterator<pointer>(__end_)); @@ -477,7 +477,7 @@  catch (...)  {  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -542,7 +542,7 @@  --__begin_;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline @@ -637,7 +637,7 @@  ++__end_;  }   -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_END_NAMESPACE_STD   
diff --git a/include/__tree b/include/__tree index 18363dc..7def154 100644 --- a/include/__tree +++ b/include/__tree 
@@ -343,7 +343,7 @@  // but copy __z's color. This does not impact __x or __w.  if (__y != __z)  { - // __z->__left_ != nulptr but __z->__right_ might == __x == nullptr  + // __z->__left_ != nulptr but __z->__right_ might == __x == nullptr  __y->__parent_ = __z->__parent_;  if (__tree_is_left_child(__z))  __y->__parent_->__left_ = __y; @@ -413,8 +413,8 @@  }  // reset sibling, and it still can't be null  __w = __tree_is_left_child(__x) ? - __x->__parent_->__right_ :  - __x->__parent_->__left_;  + __x->__parent_->__right_ : + __x->__parent_->__left_;  // continue;  }  else // __w has a red child @@ -465,8 +465,8 @@  }  // reset sibling, and it still can't be null  __w = __tree_is_left_child(__x) ? - __x->__parent_->__right_ :  - __x->__parent_->__left_;  + __x->__parent_->__right_ : + __x->__parent_->__left_;  // continue;  }  else // __w has a red child @@ -496,7 +496,6 @@    template <class> class __map_node_destructor;   -  template <class _Allocator>  class __tree_node_destructor  { @@ -594,10 +593,10 @@  template <class ..._Args>  explicit __tree_node(_Args&& ...__args)  : __value_(_STD::forward<_Args>(__args)...) {} -#else +#else // _LIBCPP_MOVE  explicit __tree_node(const value_type& __v)  : __value_(__v) {} -#endif +#endif // _LIBCPP_MOVE  };    template <class> class __map_iterator; @@ -832,7 +831,7 @@  __tree(__tree&& __t);  __tree(__tree&& __t, const allocator_type& __a);  __tree& operator=(__tree&& __t); -#endif +#endif // _LIBCPP_MOVE    ~__tree();   @@ -870,13 +869,13 @@  iterator __insert_multi(_V&& __v);  template <class _V>  iterator __insert_multi(const_iterator __p, _V&& __v); -#else +#else // _LIBCPP_MOVE    pair<iterator, bool> __insert_unique(const value_type& __v);  iterator __insert_unique(const_iterator __p, const value_type& __v);  iterator __insert_multi(const value_type& __v);  iterator __insert_multi(const_iterator __p, const value_type& __v); -#endif +#endif // _LIBCPP_MOVE    pair<iterator, bool> __node_insert_unique(__node_pointer __nd);  iterator __node_insert_unique(const_iterator __p, @@ -971,7 +970,7 @@  #ifdef _LIBCPP_MOVE  template <class ..._Args>  __node_holder __construct_node(_Args&& ...__args); -#else +#else // _LIBCPP_MOVE  __node_holder __construct_node(const value_type& __v);  #endif   @@ -1105,7 +1104,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __cache != nullptr && __first != __last; ++__first)  {  __cache->__value_ = *__first; @@ -1122,7 +1121,7 @@  destroy(__cache);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__cache != nullptr)  {  while (__cache->__parent_ != nullptr) @@ -1145,7 +1144,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __cache != nullptr && __first != __last; ++__first)  {  __cache->__value_ = *__first; @@ -1162,7 +1161,7 @@  destroy(__cache);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__cache != nullptr)  {  while (__cache->__parent_ != nullptr) @@ -1264,7 +1263,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  while (__cache != nullptr && __t.size() != 0)  {  __cache->__value_ = _STD::move(__t.remove(__t.begin())->__value_); @@ -1281,7 +1280,7 @@  destroy(__cache);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__cache != nullptr)  {  while (__cache->__parent_ != nullptr) @@ -1303,7 +1302,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Compare, class _Allocator>  __tree<_Tp, _Compare, _Allocator>::~__tree() @@ -1727,7 +1726,7 @@  return iterator(__h.release());  }   -#else +#else // _LIBCPP_MOVE    template <class _Tp, class _Compare, class _Allocator>  typename __tree<_Tp, _Compare, _Allocator>::__node_holder @@ -1796,7 +1795,7 @@  return iterator(__h.release());  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Compare, class _Allocator>  pair<typename __tree<_Tp, _Compare, _Allocator>::iterator, bool> 
diff --git a/include/__tuple b/include/__tuple index 642cff8..7426ed3 100644 --- a/include/__tuple +++ b/include/__tuple 
@@ -21,7 +21,7 @@    #include <__tuple_03>   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    _LIBCPP_BEGIN_NAMESPACE_STD   @@ -41,7 +41,6 @@  template <class _Tp, size_t _Size> struct __tuple_like<array<_Tp, _Size> > : true_type {};  template <class _Tp, size_t _Size> struct __tuple_like<const array<_Tp, _Size> > : true_type {};   -  template <size_t _Ip, class ..._Tp>  typename tuple_element<_Ip, tuple<_Tp...>>::type&  get(tuple<_Tp...>&); 
diff --git a/include/__tuple_03 b/include/__tuple_03 index 39a3bf5..417448b 100644 --- a/include/__tuple_03 +++ b/include/__tuple_03 
@@ -22,4 +22,4 @@    _LIBCPP_END_NAMESPACE_STD   -#endif +#endif // _LIBCPP___TUPLE_03 
diff --git a/include/algorithm b/include/algorithm index 4e9487b..56426e7 100644 --- a/include/algorithm +++ b/include/algorithm 
@@ -469,21 +469,21 @@  void  sort_heap(RandomAccessIterator first, RandomAccessIterator last, Compare comp);   -template <class RandomAccessIterator>  +template <class RandomAccessIterator>  bool - is_heap(RandomAccessIterator first, RandomAccessiterator last);  + is_heap(RandomAccessIterator first, RandomAccessiterator last);   -template <class RandomAccessIterator, class Compare>  +template <class RandomAccessIterator, class Compare>  bool - is_heap(RandomAccessIterator first, RandomAccessiterator last, Compare comp);  + is_heap(RandomAccessIterator first, RandomAccessiterator last, Compare comp);   -template <class RandomAccessIterator>  +template <class RandomAccessIterator>  RandomAccessIterator - is_heap_until(RandomAccessIterator first, RandomAccessiterator last);  + is_heap_until(RandomAccessIterator first, RandomAccessiterator last);   -template <class RandomAccessIterator, class Compare>  +template <class RandomAccessIterator, class Compare>  RandomAccessIterator - is_heap_until(RandomAccessIterator first, RandomAccessiterator last, Compare comp);  + is_heap_until(RandomAccessIterator first, RandomAccessiterator last, Compare comp);    template <class ForwardIterator>  ForwardIterator @@ -567,7 +567,7 @@  InputIterator2 first2, InputIterator2 last2, Compare comp);    template <class BidirectionalIterator> - bool  + bool  next_permutation(BidirectionalIterator first, BidirectionalIterator last);    template <class BidirectionalIterator, class Compare> @@ -1200,7 +1200,7 @@  break;  ++__first1;  } -#else // _LIBCPP_UNROLL_LOOPS +#else // !_LIBCPP_UNROLL_LOOPS  for (_D1 __loop_unroll = (__s - __first1) / 4; __loop_unroll > 0; --__loop_unroll)  {  if (__pred(*__first1, *__first2)) @@ -1230,7 +1230,7 @@  return __last1;  }  __phase2: -#endif // _LIBCPP_UNROLL_LOOPS +#endif // !_LIBCPP_UNROLL_LOOPS  _RandomAccessIterator1 __m1 = __first1;  _RandomAccessIterator2 __m2 = __first2;  #if !_LIBCPP_UNROLL_LOOPS @@ -1245,7 +1245,7 @@  break;  }  } -#else // _LIBCPP_UNROLL_LOOPS +#else // !_LIBCPP_UNROLL_LOOPS  ++__m2;  ++__m1;  for (_D2 __loop_unroll = (__last2 - __m2) / 4; __loop_unroll > 0; --__loop_unroll) @@ -1281,7 +1281,7 @@  }  __continue:  ++__first1; -#endif // _LIBCPP_UNROLL_LOOPS +#endif // !_LIBCPP_UNROLL_LOOPS  }  }   @@ -1995,7 +1995,6 @@  return __result;  }   -  template <class _InputIterator, class _OutputIterator, class _BinaryPredicate>  inline _LIBCPP_INLINE_VISIBILITY  _OutputIterator @@ -2123,7 +2122,7 @@  {  typedef typename iterator_traits<_RandomAccessIterator>::difference_type difference_type;  typedef typename iterator_traits<_RandomAccessIterator>::value_type value_type; -  +  if (__first == __middle)  return __last;  if (__middle == __last) @@ -3147,7 +3146,7 @@  return __last;  }   -template<class _ForwardIterator>  +template<class _ForwardIterator>  inline _LIBCPP_INLINE_VISIBILITY  _ForwardIterator  is_sorted_until(_ForwardIterator __first, _ForwardIterator __last) @@ -3165,7 +3164,7 @@  return _STD::is_sorted_until(__first, __last, __comp) == __last;  }   -template<class _ForwardIterator>  +template<class _ForwardIterator>  inline _LIBCPP_INLINE_VISIBILITY  bool  is_sorted(_ForwardIterator __first, _ForwardIterator __last) @@ -3616,10 +3615,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __sort<_Comp_ref>(__first, __last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __sort<_Comp_ref>(__first, __last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -3713,10 +3712,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __lower_bound<_Comp_ref>(__first, __last, __value, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __lower_bound<_Comp_ref>(__first, __last, __value, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _ForwardIterator, class _Tp> @@ -3761,10 +3760,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __upper_bound<_Comp_ref>(__first, __last, __value, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __upper_bound<_Comp_ref>(__first, __last, __value, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _ForwardIterator, class _Tp> @@ -3821,10 +3820,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __equal_range<_Comp_ref>(__first, __last, __value, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __equal_range<_Comp_ref>(__first, __last, __value, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _ForwardIterator, class _Tp> @@ -3856,10 +3855,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __binary_search<_Comp_ref>(__first, __last, __value, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __binary_search<_Comp_ref>(__first, __last, __value, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _ForwardIterator, class _Tp> @@ -3906,10 +3905,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return _STD::__merge<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return _STD::__merge<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator1, class _InputIterator2, class _OutputIterator> @@ -4081,11 +4080,11 @@  __debug_less<_Compare> __c(__comp);  return _STD::__inplace_merge<_Comp_ref>(__first, __middle, __last, __c, __len1, __len2,  __buf.first, __buf.second); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return _STD::__inplace_merge<_Comp_ref>(__first, __middle, __last, __comp, __len1, __len2,  __buf.first, __buf.second); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _BidirectionalIterator> @@ -4291,10 +4290,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __stable_sort<_Comp_ref>(__first, __last, __c, __len, __buf.first, __buf.second); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __stable_sort<_Comp_ref>(__first, __last, __comp, __len, __buf.first, __buf.second); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -4334,7 +4333,7 @@  return __last;  }   -template<class _RandomAccessIterator>  +template<class _RandomAccessIterator>  inline _LIBCPP_INLINE_VISIBILITY  _RandomAccessIterator  is_heap_until(_RandomAccessIterator __first, _RandomAccessIterator __last) @@ -4352,7 +4351,7 @@  return _STD::is_heap_until(__first, __last, __comp) == __last;  }   -template<class _RandomAccessIterator>  +template<class _RandomAccessIterator>  inline _LIBCPP_INLINE_VISIBILITY  bool  is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last) @@ -4440,10 +4439,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __push_heap_back<_Comp_ref>(__first, __last, __c, __last - __first); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __push_heap_back<_Comp_ref>(__first, __last, __comp, __last - __first); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -4478,10 +4477,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __pop_heap<_Comp_ref>(__first, __last, __c, __last - __first); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __pop_heap<_Comp_ref>(__first, __last, __comp, __last - __first); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -4518,10 +4517,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __make_heap<_Comp_ref>(__first, __last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __make_heap<_Comp_ref>(__first, __last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -4552,10 +4551,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __sort_heap<_Comp_ref>(__first, __last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __sort_heap<_Comp_ref>(__first, __last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -4596,10 +4595,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __partial_sort<_Comp_ref>(__first, __middle, __last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __partial_sort<_Comp_ref>(__first, __middle, __last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -4646,10 +4645,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __partial_sort_copy<_Comp_ref>(__first, __last, __result_first, __result_last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __partial_sort_copy<_Comp_ref>(__first, __last, __result_first, __result_last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator, class _RandomAccessIterator> @@ -4858,10 +4857,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  __nth_element<_Comp_ref>(__first, __nth, __last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  __nth_element<_Comp_ref>(__first, __nth, __last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _RandomAccessIterator> @@ -4899,10 +4898,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __includes<_Comp_ref>(__first1, __last1, __first2, __last2, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __includes<_Comp_ref>(__first1, __last1, __first2, __last2, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator1, class _InputIterator2> @@ -4952,10 +4951,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __set_union<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __set_union<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator1, class _InputIterator2, class _OutputIterator> @@ -5004,10 +5003,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __set_intersection<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __set_intersection<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator1, class _InputIterator2, class _OutputIterator> @@ -5058,10 +5057,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __set_difference<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __set_difference<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator1, class _InputIterator2, class _OutputIterator> @@ -5117,10 +5116,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __set_symmetric_difference<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __set_symmetric_difference<_Comp_ref>(__first1, __last1, __first2, __last2, __result, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator1, class _InputIterator2, class _OutputIterator> @@ -5161,10 +5160,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __lexicographical_compare<_Comp_ref>(__first1, __last1, __first2, __last2, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __lexicographical_compare<_Comp_ref>(__first1, __last1, __first2, __last2, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _InputIterator1, class _InputIterator2> @@ -5216,15 +5215,15 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __next_permutation<_Comp_ref>(__first, __last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __next_permutation<_Comp_ref>(__first, __last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _BidirectionalIterator>  inline _LIBCPP_INLINE_VISIBILITY -bool  +bool  next_permutation(_BidirectionalIterator __first, _BidirectionalIterator __last)  {  return _STD::next_permutation(__first, __last, @@ -5269,10 +5268,10 @@  typedef typename add_lvalue_reference<__debug_less<_Compare> >::type _Comp_ref;  __debug_less<_Compare> __c(__comp);  return __prev_permutation<_Comp_ref>(__first, __last, __c); -#else +#else // _LIBCPP_DEBUG  typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;  return __prev_permutation<_Comp_ref>(__first, __last, __comp); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _BidirectionalIterator> 
diff --git a/include/array b/include/array index dea5655..ce31681 100644 --- a/include/array +++ b/include/array 
@@ -16,84 +16,84 @@    namespace std  { -template <class T, size_t N >  +template <class T, size_t N >  struct array -{  - // types:  - typedef T & reference;  - typedef const T & const_reference;  - typedef implementation defined iterator;  - typedef implementation defined const_iterator;  - typedef size_t size_type;  - typedef ptrdiff_t difference_type;  - typedef T value_type;  +{ + // types: + typedef T & reference; + typedef const T & const_reference; + typedef implementation defined iterator; + typedef implementation defined const_iterator; + typedef size_t size_type; + typedef ptrdiff_t difference_type; + typedef T value_type;  typedef T* pointer;  typedef const T* const_pointer; - typedef std::reverse_iterator<iterator> reverse_iterator;  - typedef std::reverse_iterator<const_iterator> const_reverse_iterator;  + typedef std::reverse_iterator<iterator> reverse_iterator; + typedef std::reverse_iterator<const_iterator> const_reverse_iterator;   - // No explicit construct/copy/destroy for aggregate type  - void fill(const T& u);  + // No explicit construct/copy/destroy for aggregate type + void fill(const T& u);  void swap(array& a);   - // iterators:  - iterator begin();  - const_iterator begin() const;  - iterator end();  - const_iterator end() const;  + // iterators: + iterator begin(); + const_iterator begin() const; + iterator end(); + const_iterator end() const;   - reverse_iterator rbegin();  - const_reverse_iterator rbegin() const;  - reverse_iterator rend();  - const_reverse_iterator rend() const;  + reverse_iterator rbegin(); + const_reverse_iterator rbegin() const; + reverse_iterator rend(); + const_reverse_iterator rend() const;   - const_iterator cbegin() const;  - const_iterator cend() const;  + const_iterator cbegin() const; + const_iterator cend() const;  const_reverse_iterator crbegin() const; - const_reverse_iterator crend() const;  + const_reverse_iterator crend() const;   - // capacity:  - constexpr size_type size() const;  - constexpr size_type max_size() const;  - bool empty() const;  + // capacity: + constexpr size_type size() const; + constexpr size_type max_size() const; + bool empty() const;   - // element access:  - reference operator[](size_type n);  - const_reference operator[](size_type n) const;  - const_reference at(size_type n) const;  - reference at(size_type n);  + // element access: + reference operator[](size_type n); + const_reference operator[](size_type n) const; + const_reference at(size_type n) const; + reference at(size_type n);   - reference front();  - const_reference front() const;  - reference back();  - const_reference back() const;  + reference front(); + const_reference front() const; + reference back(); + const_reference back() const;   - T* data();  - const T* data() const;  + T* data(); + const T* data() const;  };   -template <class T, size_t N>  - bool operator==(const array<T,N>& x, const array<T,N>& y);  -template <class T, size_t N>  - bool operator!=(const array<T,N>& x, const array<T,N>& y);  -template <class T, size_t N>  - bool operator<(const array<T,N>& x, const array<T,N>& y);  -template <class T, size_t N>  - bool operator>(const array<T,N>& x, const array<T,N>& y);  -template <class T, size_t N>  - bool operator<=(const array<T,N>& x, const array<T,N>& y);  -template <class T, size_t N>  - bool operator>=(const array<T,N>& x, const array<T,N>& y);  +template <class T, size_t N> + bool operator==(const array<T,N>& x, const array<T,N>& y); +template <class T, size_t N> + bool operator!=(const array<T,N>& x, const array<T,N>& y); +template <class T, size_t N> + bool operator<(const array<T,N>& x, const array<T,N>& y); +template <class T, size_t N> + bool operator>(const array<T,N>& x, const array<T,N>& y); +template <class T, size_t N> + bool operator<=(const array<T,N>& x, const array<T,N>& y); +template <class T, size_t N> + bool operator>=(const array<T,N>& x, const array<T,N>& y);   -template <class T, size_t N >  - void swap(array<T,N>& x, array<T,N>& y);  +template <class T, size_t N > + void swap(array<T,N>& x, array<T,N>& y);   -template <class T> class tuple_size;  -template <int I, class T> class tuple_element;  +template <class T> class tuple_size; +template <int I, class T> class tuple_element;  template <class T, size_t N> struct tuple_size<array<T, N>>; -template <int I, class T, size_t N> struct tuple_element<I, array<T, N>>;  -template <int I, class T, size_t N> T& get(array<T, N>&);  -template <int I, class T, size_t N> const T& get(const array<T, N>&);  +template <int I, class T, size_t N> struct tuple_element<I, array<T, N>>; +template <int I, class T, size_t N> T& get(array<T, N>&); +template <int I, class T, size_t N> const T& get(const array<T, N>&);    } // std   @@ -114,30 +114,30 @@    _LIBCPP_BEGIN_NAMESPACE_STD   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  struct array  {  // types:  typedef array __self; - typedef _Tp value_type;  - typedef value_type& reference;  - typedef const value_type& const_reference;  + typedef _Tp value_type; + typedef value_type& reference; + typedef const value_type& const_reference;  typedef value_type* iterator;  typedef const value_type* const_iterator;  typedef value_type* pointer;  typedef const value_type* const_pointer; - typedef size_t size_type;  - typedef ptrdiff_t difference_type;  - typedef std::reverse_iterator<iterator> reverse_iterator;  - typedef std::reverse_iterator<const_iterator> const_reverse_iterator;  + typedef size_t size_type; + typedef ptrdiff_t difference_type; + typedef std::reverse_iterator<iterator> reverse_iterator; + typedef std::reverse_iterator<const_iterator> const_reverse_iterator;    value_type __elems_[_Size > 0 ? _Size : 1];   - // No explicit construct/copy/destroy for aggregate type  + // No explicit construct/copy/destroy for aggregate type  _LIBCPP_INLINE_VISIBILITY void fill(const value_type& __u) {_STD::fill_n(__elems_, _Size, __u);}  _LIBCPP_INLINE_VISIBILITY void swap(array& __a) {_STD::swap_ranges(__elems_, __elems_ + _Size, __a.__elems_);}   - // iterators:  + // iterators:  _LIBCPP_INLINE_VISIBILITY iterator begin() {return iterator(__elems_);}  _LIBCPP_INLINE_VISIBILITY const_iterator begin() const {return const_iterator(__elems_);}  _LIBCPP_INLINE_VISIBILITY iterator end() {return iterator(__elems_ + _Size);} @@ -153,16 +153,16 @@  _LIBCPP_INLINE_VISIBILITY const_reverse_iterator crbegin() const {return rbegin();}  _LIBCPP_INLINE_VISIBILITY const_reverse_iterator crend() const {return rend();}   - // capacity:  + // capacity:  _LIBCPP_INLINE_VISIBILITY /*constexpr*/ size_type size() const {return _Size;}  _LIBCPP_INLINE_VISIBILITY /*constexpr*/ size_type max_size() const {return _Size;}  _LIBCPP_INLINE_VISIBILITY bool empty() const {return _Size == 0;}   - // element access:  + // element access:  _LIBCPP_INLINE_VISIBILITY reference operator[](size_type __n) {return __elems_[__n];}  _LIBCPP_INLINE_VISIBILITY const_reference operator[](size_type __n) const {return __elems_[__n];} - reference at(size_type __n);  - const_reference at(size_type __n) const;  + reference at(size_type __n); + const_reference at(size_type __n) const;    _LIBCPP_INLINE_VISIBILITY reference front() {return __elems_[0];}  _LIBCPP_INLINE_VISIBILITY const_reference front() const {return __elems_[0];} @@ -170,10 +170,10 @@  _LIBCPP_INLINE_VISIBILITY const_reference back() const {return __elems_[_Size > 0 ? _Size-1 : 0];}    _LIBCPP_INLINE_VISIBILITY value_type* data() {return __elems_;} - _LIBCPP_INLINE_VISIBILITY const value_type* data() const {return __elems_;}  + _LIBCPP_INLINE_VISIBILITY const value_type* data() const {return __elems_;}  };   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  typename array<_Tp, _Size>::reference  array<_Tp, _Size>::at(size_type __n)  { @@ -186,7 +186,7 @@  return __elems_[__n];  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  typename array<_Tp, _Size>::const_reference  array<_Tp, _Size>::at(size_type __n) const  { @@ -199,7 +199,7 @@  return __elems_[__n];  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  _LIBCPP_INLINE_VISIBILITY inline  bool  operator==(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) @@ -207,7 +207,7 @@  return _STD::equal(__x.__elems_, __x.__elems_ + _Size, __y.__elems_);  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  _LIBCPP_INLINE_VISIBILITY inline  bool  operator!=(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) @@ -215,7 +215,7 @@  return !(__x == __y);  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  _LIBCPP_INLINE_VISIBILITY inline  bool  operator<(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) @@ -223,7 +223,7 @@  return _STD::lexicographical_compare(__x.__elems_, __x.__elems_ + _Size, __y.__elems_, __y.__elems_ + _Size);  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  _LIBCPP_INLINE_VISIBILITY inline  bool  operator>(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) @@ -231,7 +231,7 @@  return __y < __x;  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  _LIBCPP_INLINE_VISIBILITY inline  bool  operator<=(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) @@ -239,7 +239,7 @@  return !(__y < __x);  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  _LIBCPP_INLINE_VISIBILITY inline  bool  operator>=(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) @@ -247,7 +247,7 @@  return !(__x < __y);  }   -template <class _Tp, size_t _Size>  +template <class _Tp, size_t _Size>  _LIBCPP_INLINE_VISIBILITY inline  void  swap(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) 
diff --git a/include/bitset b/include/bitset index 7ec860e..ecf9a57 100644 --- a/include/bitset +++ b/include/bitset 
@@ -598,61 +598,61 @@  static const unsigned __n_words = _Size == 0 ? 0 : (_Size - 1) / (sizeof(size_t) * CHAR_BIT) + 1;  typedef __bitset<__n_words, _Size> base;   -public:  +public:  typedef typename base::reference reference;  typedef typename base::const_reference const_reference;   - // 23.3.5.1 constructors:  + // 23.3.5.1 constructors:  /*constexpr*/ _LIBCPP_INLINE_VISIBILITY bitset() {}  /*constexpr*/ _LIBCPP_INLINE_VISIBILITY bitset(unsigned long long __v) : base(__v) {}  explicit bitset(const char* __str); - template<class _CharT, class _Traits, class _Allocator>  - explicit bitset(const basic_string<_CharT,_Traits,_Allocator>& __str,  - typename basic_string<_CharT,_Traits,_Allocator>::size_type __pos = 0,  - typename basic_string<_CharT,_Traits,_Allocator>::size_type __n =  + template<class _CharT, class _Traits, class _Allocator> + explicit bitset(const basic_string<_CharT,_Traits,_Allocator>& __str, + typename basic_string<_CharT,_Traits,_Allocator>::size_type __pos = 0, + typename basic_string<_CharT,_Traits,_Allocator>::size_type __n =  (basic_string<_CharT,_Traits,_Allocator>::npos), - _CharT __zero = _CharT('0'), _CharT __one = _CharT('1'));  + _CharT __zero = _CharT('0'), _CharT __one = _CharT('1'));   - // 23.3.5.2 bitset operations:  + // 23.3.5.2 bitset operations:  bitset& operator&=(const bitset& __rhs); - bitset& operator|=(const bitset& __rhs);  - bitset& operator^=(const bitset& __rhs);  - bitset& operator<<=(size_t __pos);  - bitset& operator>>=(size_t __pos);  - bitset& set();  - bitset& set(size_t __pos, bool __val = true);  - bitset& reset();  - bitset& reset(size_t __pos);  - bitset operator~() const;  - bitset& flip();  - bitset& flip(size_t __pos);  + bitset& operator|=(const bitset& __rhs); + bitset& operator^=(const bitset& __rhs); + bitset& operator<<=(size_t __pos); + bitset& operator>>=(size_t __pos); + bitset& set(); + bitset& set(size_t __pos, bool __val = true); + bitset& reset(); + bitset& reset(size_t __pos); + bitset operator~() const; + bitset& flip(); + bitset& flip(size_t __pos);   - // element access:  + // element access:  _LIBCPP_INLINE_VISIBILITY const_reference operator[](size_t __p) const {return base::__make_ref(__p);}  _LIBCPP_INLINE_VISIBILITY reference operator[](size_t __p) {return base::__make_ref(__p);} - unsigned long to_ulong() const;  - unsigned long long to_ullong() const;  - template <class _CharT, class _Traits, class _Allocator>  + unsigned long to_ulong() const; + unsigned long long to_ullong() const; + template <class _CharT, class _Traits, class _Allocator>  basic_string<_CharT, _Traits, _Allocator> to_string(_CharT __zero = _CharT('0'), - _CharT __one = _CharT('1')) const;  - template <class _CharT, class _Traits>  + _CharT __one = _CharT('1')) const; + template <class _CharT, class _Traits>  basic_string<_CharT, _Traits, allocator<_CharT> > to_string(_CharT __zero = _CharT('0'), - _CharT __one = _CharT('1')) const;  - template <class _CharT>  + _CharT __one = _CharT('1')) const; + template <class _CharT>  basic_string<_CharT, char_traits<_CharT>, allocator<_CharT> > to_string(_CharT __zero = _CharT('0'), - _CharT __one = _CharT('1')) const;  + _CharT __one = _CharT('1')) const;  basic_string<char, char_traits<char>, allocator<char> > to_string(char __zero = '0', - char __one = '1') const;  + char __one = '1') const;  size_t count() const;  /*constexpr*/ _LIBCPP_INLINE_VISIBILITY size_t size() const {return _Size;} - bool operator==(const bitset& __rhs) const;  - bool operator!=(const bitset& __rhs) const;  - bool test(size_t __pos) const;  - bool all() const;  - bool any() const;  + bool operator==(const bitset& __rhs) const; + bool operator!=(const bitset& __rhs) const; + bool test(size_t __pos) const; + bool all() const; + bool any() const;  _LIBCPP_INLINE_VISIBILITY bool none() const {return !any();} - bitset operator<<(size_t __pos) const;  - bitset operator>>(size_t __pos) const;  + bitset operator<<(size_t __pos) const; + bitset operator>>(size_t __pos) const;    private:   @@ -690,9 +690,9 @@  }    template <size_t _Size> -template<class _CharT, class _Traits, class _Allocator>  -bitset<_Size>::bitset(const basic_string<_CharT,_Traits,_Allocator>& __str,  - typename basic_string<_CharT,_Traits,_Allocator>::size_type __pos,  +template<class _CharT, class _Traits, class _Allocator> +bitset<_Size>::bitset(const basic_string<_CharT,_Traits,_Allocator>& __str, + typename basic_string<_CharT,_Traits,_Allocator>::size_type __pos,  typename basic_string<_CharT,_Traits,_Allocator>::size_type __n,  _CharT __zero, _CharT __one)  { @@ -867,7 +867,7 @@  }    template <size_t _Size> -template <class _CharT, class _Traits, class _Allocator>  +template <class _CharT, class _Traits, class _Allocator>  basic_string<_CharT, _Traits, _Allocator>  bitset<_Size>::to_string(_CharT __zero, _CharT __one) const  { @@ -881,7 +881,7 @@  }    template <size_t _Size> -template <class _CharT, class _Traits>  +template <class _CharT, class _Traits>  inline _LIBCPP_INLINE_VISIBILITY  basic_string<_CharT, _Traits, allocator<_CharT> >  bitset<_Size>::to_string(_CharT __zero, _CharT __one) const @@ -890,7 +890,7 @@  }    template <size_t _Size> -template <class _CharT>  +template <class _CharT>  inline _LIBCPP_INLINE_VISIBILITY  basic_string<_CharT, char_traits<_CharT>, allocator<_CharT> >  bitset<_Size>::to_string(_CharT __zero, _CharT __one) const 
diff --git a/include/cerrno b/include/cerrno index f96ea0a..028a388 100644 --- a/include/cerrno +++ b/include/cerrno 
@@ -44,14 +44,14 @@  #define ENOTRECOVERABLE __elast1  #define ELAST ENOTRECOVERABLE   -#else +#else // defined(EOWNERDEAD)    #define EOWNERDEAD __elast1  #define ENOTRECOVERABLE __elast2  #define ELAST ENOTRECOVERABLE   -#endif +#endif // defined(EOWNERDEAD)   -#endif +#endif // !defined(EOWNERDEAD) || !defined(ENOTRECOVERABLE)    #endif // _LIBCPP_CERRNO 
diff --git a/include/cmath b/include/cmath index f133de9..7ddb5fd 100644 --- a/include/cmath +++ b/include/cmath 
@@ -141,17 +141,17 @@    int fpclassify(floating_point x);   -bool isfinite(floating_point x);  -bool isinf(floating_point x);  -bool isnan(floating_point x);  -bool isnormal(floating_point x);  +bool isfinite(floating_point x); +bool isinf(floating_point x); +bool isnan(floating_point x); +bool isnormal(floating_point x);   -bool isgreater(floating_point x, floating_point y);  -bool isgreaterequal(floating_point x, floating_point y);  -bool isless(floating_point x, floating_point y);  -bool islessequal(floating_point x, floating_point y);  -bool islessgreater(floating_point x, floating_point y);  -bool isunordered(floating_point x, floating_point y);  +bool isgreater(floating_point x, floating_point y); +bool isgreaterequal(floating_point x, floating_point y); +bool isless(floating_point x, floating_point y); +bool islessequal(floating_point x, floating_point y); +bool islessgreater(floating_point x, floating_point y); +bool isunordered(floating_point x, floating_point y);    floating_point acosh (arithmetic x);  float acoshf(float x); @@ -297,11 +297,11 @@    */   -// FIXME: work around for Clang with -std=C++0x on OSX/iOS  +// FIXME: work around for Clang with -std=C++0x on OSX/iOS  #if defined(__clang__) && defined(__APPLE__)  # pragma push_macro("__STRICT_ANSI__")  # undef __STRICT_ANSI__ -#endif +#endif // defined(__clang__) && defined(__APPLE__)    #include <__config>  #include <math.h> 
diff --git a/include/complex b/include/complex index ef56952..96eeff6 100644 --- a/include/complex +++ b/include/complex 
@@ -49,89 +49,89 @@    template<>  class complex<float> -{  -public:  - typedef float value_type;  +{ +public: + typedef float value_type;   - constexpr complex(float re = 0.0f, float im = 0.0f);  - explicit constexpr complex(const complex<double>&);  - explicit constexpr complex(const complex<long double>&);  + constexpr complex(float re = 0.0f, float im = 0.0f); + explicit constexpr complex(const complex<double>&); + explicit constexpr complex(const complex<long double>&);   - constexpr float real() const;  + constexpr float real() const;  void real(float); - constexpr float imag() const;  + constexpr float imag() const;  void imag(float);   - complex<float>& operator= (float);  - complex<float>& operator+=(float);  - complex<float>& operator-=(float);  - complex<float>& operator*=(float);  - complex<float>& operator/=(float);  + complex<float>& operator= (float); + complex<float>& operator+=(float); + complex<float>& operator-=(float); + complex<float>& operator*=(float); + complex<float>& operator/=(float);   - complex<float>& operator=(const complex<float>&);  - template<class X> complex<float>& operator= (const complex<X>&);  - template<class X> complex<float>& operator+=(const complex<X>&);  - template<class X> complex<float>& operator-=(const complex<X>&);  - template<class X> complex<float>& operator*=(const complex<X>&);  - template<class X> complex<float>& operator/=(const complex<X>&);  + complex<float>& operator=(const complex<float>&); + template<class X> complex<float>& operator= (const complex<X>&); + template<class X> complex<float>& operator+=(const complex<X>&); + template<class X> complex<float>& operator-=(const complex<X>&); + template<class X> complex<float>& operator*=(const complex<X>&); + template<class X> complex<float>& operator/=(const complex<X>&);  };    template<>  class complex<double> -{  -public:  - typedef double value_type;  +{ +public: + typedef double value_type;   - constexpr complex(double re = 0.0, double im = 0.0);  - constexpr complex(const complex<float>&);  - explicit constexpr complex(const complex<long double>&);  + constexpr complex(double re = 0.0, double im = 0.0); + constexpr complex(const complex<float>&); + explicit constexpr complex(const complex<long double>&);   - constexpr double real() const;  + constexpr double real() const;  void real(double); - constexpr double imag() const;  + constexpr double imag() const;  void imag(double);   - complex<double>& operator= (double);  - complex<double>& operator+=(double);  - complex<double>& operator-=(double);  - complex<double>& operator*=(double);  - complex<double>& operator/=(double);  - complex<double>& operator=(const complex<double>&);  + complex<double>& operator= (double); + complex<double>& operator+=(double); + complex<double>& operator-=(double); + complex<double>& operator*=(double); + complex<double>& operator/=(double); + complex<double>& operator=(const complex<double>&);   - template<class X> complex<double>& operator= (const complex<X>&);  - template<class X> complex<double>& operator+=(const complex<X>&);  - template<class X> complex<double>& operator-=(const complex<X>&);  - template<class X> complex<double>& operator*=(const complex<X>&);  - template<class X> complex<double>& operator/=(const complex<X>&);  -};  + template<class X> complex<double>& operator= (const complex<X>&); + template<class X> complex<double>& operator+=(const complex<X>&); + template<class X> complex<double>& operator-=(const complex<X>&); + template<class X> complex<double>& operator*=(const complex<X>&); + template<class X> complex<double>& operator/=(const complex<X>&); +};    template<>  class complex<long double> -{  -public:  - typedef long double value_type;  +{ +public: + typedef long double value_type;   - constexpr complex(long double re = 0.0L, long double im = 0.0L);  - constexpr complex(const complex<float>&);  - constexpr complex(const complex<double>&);  + constexpr complex(long double re = 0.0L, long double im = 0.0L); + constexpr complex(const complex<float>&); + constexpr complex(const complex<double>&);   - constexpr long double real() const;  + constexpr long double real() const;  void real(long double); - constexpr long double imag() const;  + constexpr long double imag() const;  void imag(long double);   - complex<long double>& operator=(const complex<long double>&);  - complex<long double>& operator= (long double);  - complex<long double>& operator+=(long double);  - complex<long double>& operator-=(long double);  - complex<long double>& operator*=(long double);  - complex<long double>& operator/=(long double);  + complex<long double>& operator=(const complex<long double>&); + complex<long double>& operator= (long double); + complex<long double>& operator+=(long double); + complex<long double>& operator-=(long double); + complex<long double>& operator*=(long double); + complex<long double>& operator/=(long double);   - template<class X> complex<long double>& operator= (const complex<X>&);  - template<class X> complex<long double>& operator+=(const complex<X>&);  - template<class X> complex<long double>& operator-=(const complex<X>&);  - template<class X> complex<long double>& operator*=(const complex<X>&);  - template<class X> complex<long double>& operator/=(const complex<X>&);  + template<class X> complex<long double>& operator= (const complex<X>&); + template<class X> complex<long double>& operator+=(const complex<X>&); + template<class X> complex<long double>& operator-=(const complex<X>&); + template<class X> complex<long double>& operator*=(const complex<X>&); + template<class X> complex<long double>& operator/=(const complex<X>&);  };    // 26.3.6 operators: @@ -321,11 +321,11 @@    template<>  class complex<float> -{  +{  float __re_;  float __im_; -public:  - typedef float value_type;  +public: + typedef float value_type;    /*constexpr*/ _LIBCPP_INLINE_VISIBILITY complex(float __re = 0.0f, float __im = 0.0f)  : __re_(__re), __im_(__im) {} @@ -376,11 +376,11 @@    template<>  class complex<double> -{  +{  double __re_;  double __im_; -public:  - typedef double value_type;  +public: + typedef double value_type;    /*constexpr*/ _LIBCPP_INLINE_VISIBILITY complex(double __re = 0.0, double __im = 0.0)  : __re_(__re), __im_(__im) {} @@ -427,15 +427,15 @@  *this = *this / __c;  return *this;  } -};  +};    template<>  class complex<long double> -{  +{  long double __re_;  long double __im_; -public:  - typedef long double value_type;  +public: + typedef long double value_type;    /*constexpr*/ _LIBCPP_INLINE_VISIBILITY complex(long double __re = 0.0L, long double __im = 0.0L)  : __re_(__re), __im_(__im) {} 
diff --git a/include/complex.h b/include/complex.h index 95aaa71..4960944 100644 --- a/include/complex.h +++ b/include/complex.h 
@@ -22,11 +22,11 @@    #include <ccomplex>   -#else +#else // __cplusplus    #include_next <complex.h>   -#endif +#endif // __cplusplus    #pragma GCC system_header   
diff --git a/include/csignal b/include/csignal index aef1c04..959f8b8 100644 --- a/include/csignal +++ b/include/csignal 
@@ -25,7 +25,7 @@  SIGINT  SIGSEGV  SIGTERM -  +  namespace std  {   
diff --git a/include/cstdarg b/include/cstdarg index 926a38f..ccff0d6 100644 --- a/include/cstdarg +++ b/include/cstdarg 
@@ -20,7 +20,7 @@  void va_copy(va_list dest, va_list src); // C99  void va_end(va_list ap);  void va_start(va_list ap, parmN); -  +  namespace std  {   
diff --git a/include/cstddef b/include/cstddef index 8cba5f8..a5297ec 100644 --- a/include/cstddef +++ b/include/cstddef 
@@ -18,7 +18,7 @@    offsetof(type,member-designator)  NULL -  +  namespace std  {   @@ -39,7 +39,7 @@  #define __need_NULL  #define __need_ptrdiff_t  #define __need_size_t -#endif +#endif // __GLIBC__    #include <stddef.h>   @@ -65,11 +65,11 @@  _LIBCPP_ALWAYS_INLINE operator int __nat::*() const {return 0;}    template <class _Tp> - _LIBCPP_ALWAYS_INLINE  + _LIBCPP_ALWAYS_INLINE  operator _Tp* () const {return 0;}    template <class _Tp, class _Up> - _LIBCPP_ALWAYS_INLINE  + _LIBCPP_ALWAYS_INLINE  operator _Tp _Up::* () const {return 0;}    friend _LIBCPP_ALWAYS_INLINE bool operator==(nullptr_t, nullptr_t) {return true;} @@ -120,11 +120,11 @@    #define nullptr _STD::__get_nullptr_t()   -#else +#else // _LIBCPP_HAS_NO_NULLPTR    typedef decltype(nullptr) nullptr_t;   -#endif +#endif // _LIBCPP_HAS_NO_NULLPTR    _LIBCPP_END_NAMESPACE_STD   
diff --git a/include/cstdlib b/include/cstdlib index 1e5ed48..30c8342 100644 --- a/include/cstdlib +++ b/include/cstdlib 
@@ -21,7 +21,7 @@  MB_CUR_MAX  NULL  RAND_MAX -  +  namespace std  {   @@ -66,7 +66,7 @@  long long llabs(long long j); // C99  div_t div( int numer, int denom);  ldiv_t div( long numer, long denom); -lldiv_t div(long long numer, long long denom); // C++0X  +lldiv_t div(long long numer, long long denom); // C++0X  ldiv_t ldiv( long numer, long denom);  lldiv_t lldiv(long long numer, long long denom); // C99  int mblen(const char* s, size_t n); 
diff --git a/include/cstring b/include/cstring index b2305a3..06521d1 100644 --- a/include/cstring +++ b/include/cstring 
@@ -17,7 +17,7 @@  Macros:    NULL -  +  namespace std  {   
diff --git a/include/ctime b/include/ctime index 11babba..818464b 100644 --- a/include/ctime +++ b/include/ctime 
@@ -18,7 +18,7 @@    NULL  CLOCKS_PER_SEC -  +  namespace std  {   
diff --git a/include/cwchar b/include/cwchar index abbf968..2f9f218 100644 --- a/include/cwchar +++ b/include/cwchar 
@@ -20,7 +20,7 @@  WCHAR_MAX  WCHAR_MIN  WEOF -  +  namespace std  {   @@ -49,7 +49,7 @@  int fputws(const wchar_t* restrict s, FILE* restrict stream);  int fwide(FILE* stream, int mode);  wint_t getwc(FILE* stream); -wint_t getwchar();  +wint_t getwchar();  wint_t putwc(wchar_t c, FILE* stream);  wint_t putwchar(wchar_t c);  wint_t ungetwc(wint_t c, FILE* stream); @@ -92,10 +92,10 @@  int wctob(wint_t c);  int mbsinit(const mbstate_t* ps);  size_t mbrlen(const char* restrict s, size_t n, mbstate_t* restrict ps); -size_t mbrtowc(wchar_t* restrict pwc, const char* restrict s, size_t n, mbstate_t* restrict ps);  +size_t mbrtowc(wchar_t* restrict pwc, const char* restrict s, size_t n, mbstate_t* restrict ps);  size_t wcrtomb(char* restrict s, wchar_t wc, mbstate_t* restrict ps);  size_t mbsrtowcs(wchar_t* restrict dst, const char** restrict src, size_t len, - mbstate_t* restrict ps);  + mbstate_t* restrict ps);  size_t wcsrtombs(char* restrict dst, const wchar_t** restrict src, size_t len,  mbstate_t* restrict ps);   
diff --git a/include/cwctype b/include/cwctype index c6938e7..b484879 100644 --- a/include/cwctype +++ b/include/cwctype 
@@ -17,7 +17,7 @@  Macros:    WEOF -  +  namespace std  {   @@ -66,7 +66,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswalnum(wint_t __wc) {return iswalnum(__wc);}  #undef iswalnum  inline _LIBCPP_INLINE_VISIBILITY int iswalnum(wint_t __wc) {return __libcpp_iswalnum(__wc);} -#else +#else // iswalnum  using ::iswalnum;  #endif   @@ -74,7 +74,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswalpha(wint_t __wc) {return iswalpha(__wc);}  #undef iswalpha  inline _LIBCPP_INLINE_VISIBILITY int iswalpha(wint_t __wc) {return __libcpp_iswalpha(__wc);} -#else +#else // iswalpha  using ::iswalpha;  #endif   @@ -82,7 +82,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswblank(wint_t __wc) {return iswblank(__wc);}  #undef iswblank  inline _LIBCPP_INLINE_VISIBILITY int iswblank(wint_t __wc) {return __libcpp_iswblank(__wc);} -#else +#else // iswblank  using ::iswblank;  #endif   @@ -90,7 +90,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswcntrl(wint_t __wc) {return iswcntrl(__wc);}  #undef iswcntrl  inline _LIBCPP_INLINE_VISIBILITY int iswcntrl(wint_t __wc) {return __libcpp_iswcntrl(__wc);} -#else +#else // iswcntrl  using ::iswcntrl;  #endif   @@ -98,7 +98,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswdigit(wint_t __wc) {return iswdigit(__wc);}  #undef iswdigit  inline _LIBCPP_INLINE_VISIBILITY int iswdigit(wint_t __wc) {return __libcpp_iswdigit(__wc);} -#else +#else // iswdigit  using ::iswdigit;  #endif   @@ -106,7 +106,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswgraph(wint_t __wc) {return iswgraph(__wc);}  #undef iswgraph  inline _LIBCPP_INLINE_VISIBILITY int iswgraph(wint_t __wc) {return __libcpp_iswgraph(__wc);} -#else +#else // iswgraph  using ::iswgraph;  #endif   @@ -114,7 +114,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswlower(wint_t __wc) {return iswlower(__wc);}  #undef iswlower  inline _LIBCPP_INLINE_VISIBILITY int iswlower(wint_t __wc) {return __libcpp_iswlower(__wc);} -#else +#else // iswlower  using ::iswlower;  #endif   @@ -122,7 +122,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswprint(wint_t __wc) {return iswprint(__wc);}  #undef iswprint  inline _LIBCPP_INLINE_VISIBILITY int iswprint(wint_t __wc) {return __libcpp_iswprint(__wc);} -#else +#else // iswprint  using ::iswprint;  #endif   @@ -130,7 +130,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswpunct(wint_t __wc) {return iswpunct(__wc);}  #undef iswpunct  inline _LIBCPP_INLINE_VISIBILITY int iswpunct(wint_t __wc) {return __libcpp_iswpunct(__wc);} -#else +#else // iswpunct  using ::iswpunct;  #endif   @@ -138,7 +138,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswspace(wint_t __wc) {return iswspace(__wc);}  #undef iswspace  inline _LIBCPP_INLINE_VISIBILITY int iswspace(wint_t __wc) {return __libcpp_iswspace(__wc);} -#else +#else // iswspace  using ::iswspace;  #endif   @@ -146,7 +146,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswupper(wint_t __wc) {return iswupper(__wc);}  #undef iswupper  inline _LIBCPP_INLINE_VISIBILITY int iswupper(wint_t __wc) {return __libcpp_iswupper(__wc);} -#else +#else // iswupper  using ::iswupper;  #endif   @@ -154,7 +154,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswxdigit(wint_t __wc) {return iswxdigit(__wc);}  #undef iswxdigit  inline _LIBCPP_INLINE_VISIBILITY int iswxdigit(wint_t __wc) {return __libcpp_iswxdigit(__wc);} -#else +#else // iswxdigit  using ::iswxdigit;  #endif   @@ -162,7 +162,7 @@  inline _LIBCPP_INLINE_VISIBILITY int __libcpp_iswctype(wint_t __w, wctype_t __d) {return iswctype(__w, __d);}  #undef iswctype  inline _LIBCPP_INLINE_VISIBILITY int iswctype(wint_t __w, wctype_t __d) {return __libcpp_iswctype(__w, __d);} -#else +#else // iswctype  using ::iswctype;  #endif   @@ -170,7 +170,7 @@  inline _LIBCPP_INLINE_VISIBILITY wctype_t __libcpp_wctype(const char* __p) {return wctype(__p);}  #undef wctype  inline _LIBCPP_INLINE_VISIBILITY wctype_t wctype(const char* __p) {return __libcpp_wctype(__p);} -#else +#else // wctype  using ::wctype;  #endif   @@ -178,7 +178,7 @@  inline _LIBCPP_INLINE_VISIBILITY wint_t __libcpp_towlower(wint_t __wc) {return towlower(__wc);}  #undef towlower  inline _LIBCPP_INLINE_VISIBILITY wint_t towlower(wint_t __wc) {return __libcpp_towlower(__wc);} -#else +#else // towlower  using ::towlower;  #endif   @@ -186,7 +186,7 @@  inline _LIBCPP_INLINE_VISIBILITY wint_t __libcpp_towupper(wint_t __wc) {return towupper(__wc);}  #undef towupper  inline _LIBCPP_INLINE_VISIBILITY wint_t towupper(wint_t __wc) {return __libcpp_towupper(__wc);} -#else +#else // towupper  using ::towupper;  #endif   @@ -194,7 +194,7 @@  inline _LIBCPP_INLINE_VISIBILITY wint_t __libcpp_towctrans(wint_t __wc, wctype_t __d) {return towctrans(__wc, __d);}  #undef towctrans  inline _LIBCPP_INLINE_VISIBILITY wint_t towctrans(wint_t __wc, wctype_t __d) {return __libcpp_towctrans(__wc, __d);} -#else +#else // towctrans  using ::towctrans;  #endif   @@ -202,7 +202,7 @@  inline _LIBCPP_INLINE_VISIBILITY wctrans_t __libcpp_wctrans(const char* __p) {return wctrans(__p);}  #undef wctrans  inline _LIBCPP_INLINE_VISIBILITY wctrans_t wctrans(const char* __p) {return __libcpp_wctrans(__p);} -#else +#else // wctrans  using ::wctrans;  #endif   
diff --git a/include/deque b/include/deque index c4e7f52..ac76f2a 100644 --- a/include/deque +++ b/include/deque 
@@ -332,19 +332,19 @@  }  return *this;  } -  +  _LIBCPP_INLINE_VISIBILITY __deque_iterator& operator-=(difference_type __n)  {  return *this += -__n;  } -  +  _LIBCPP_INLINE_VISIBILITY __deque_iterator operator+(difference_type __n) const  {  __deque_iterator __t(*this);  __t += __n;  return __t;  } -  +  _LIBCPP_INLINE_VISIBILITY __deque_iterator operator-(difference_type __n) const  {  __deque_iterator __t(*this); @@ -398,7 +398,6 @@  _LIBCPP_INLINE_VISIBILITY __deque_iterator(__map_iterator __m, pointer __p)  : __m_iter_(__m), __ptr_(__p) {}   -  template <class _Tp, class _A> friend class __deque_base;  template <class _Tp, class _A> friend class deque;  template <class _V, class _P, class _R, class _MP, class _D, _D> @@ -936,7 +935,7 @@  __deque_base(__deque_base&& __c);  __deque_base(__deque_base&& __c, const allocator_type& __a);   -#endif +#endif // _LIBCPP_MOVE  void swap(__deque_base& __c);  void clear();   @@ -1091,7 +1090,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  void @@ -1133,7 +1132,7 @@  {  public:  // types: -  +  typedef _Tp value_type;  typedef _Allocator allocator_type;   @@ -1176,7 +1175,7 @@  deque(deque&& __c);  deque(deque&& __c, const allocator_type& __a);  deque& operator=(deque&& __c); -#endif +#endif // _LIBCPP_MOVE    template <class _InputIter>  void assign(_InputIter __f, _InputIter __l, @@ -1235,7 +1234,7 @@  void push_front(value_type&& __v);  void push_back(value_type&& __v);  iterator insert(const_iterator __p, value_type&& __v); -#endif +#endif // _LIBCPP_MOVE  iterator insert(const_iterator __p, const value_type& __v);  iterator insert(const_iterator __p, size_type __n, const value_type& __v);  template <class _InputIter> @@ -1450,7 +1449,7 @@  __base::__move_assign(__c);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  template <class _InputIter> @@ -1673,7 +1672,7 @@  ++__base::size();  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  void @@ -1717,7 +1716,7 @@  ++__base::size();  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  typename deque<_Tp, _Allocator>::iterator @@ -1893,7 +1892,7 @@  return __base::begin() + __pos;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  typename deque<_Tp, _Allocator>::iterator @@ -2134,7 +2133,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __buf.push_back(__alloc_traits::allocate(__a, __base::__block_size));  #ifndef _LIBCPP_NO_EXCEPTIONS  } @@ -2143,7 +2142,7 @@  __alloc_traits::deallocate(__a, __buf.front(), __base::__block_size);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (typename __base::__map_pointer __i = __base::__map_.begin();  __i != __base::__map_.end(); ++__i)  __buf.push_back(*__i); @@ -2213,7 +2212,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __nb > 0; --__nb)  __buf.push_back(__alloc_traits::allocate(__a, __base::__block_size));  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2225,7 +2224,7 @@  __alloc_traits::deallocate(__a, *__i, __base::__block_size);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __back_capacity > 0; --__back_capacity)  {  __buf.push_back(__base::__map_.back()); @@ -2282,7 +2281,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __buf.push_back(__alloc_traits::allocate(__a, __base::__block_size));  #ifndef _LIBCPP_NO_EXCEPTIONS  } @@ -2291,7 +2290,7 @@  __alloc_traits::deallocate(__a, __buf.back(), __base::__block_size);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (typename __base::__map_pointer __i = __base::__map_.end();  __i != __base::__map_.begin();)  __buf.push_front(*--__i); @@ -2360,7 +2359,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __nb > 0; --__nb)  __buf.push_back(__alloc_traits::allocate(__a, __base::__block_size));  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2372,7 +2371,7 @@  __alloc_traits::deallocate(__a, *__i, __base::__block_size);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __front_capacity > 0; --__front_capacity)  {  __buf.push_back(__base::__map_.front()); 
diff --git a/include/exception b/include/exception index 772ada4..f02b10f 100644 --- a/include/exception +++ b/include/exception 
@@ -150,7 +150,7 @@  {  return current_exception();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    // nested_exception @@ -178,17 +178,17 @@  };    template <class _Tp> -void  +void  #ifdef _LIBCPP_MOVE  throw_with_nested /*[[noreturn]]*/ (_Tp&& __t, typename enable_if<  is_class<typename remove_reference<_Tp>::type>::value &&  !is_base_of<nested_exception, typename remove_reference<_Tp>::type>::value  >::type* = 0) -#else +#else // _LIBCPP_MOVE  throw_with_nested (_Tp& __t, typename enable_if<  is_class<_Tp>::value && !is_base_of<nested_exception, _Tp>::value  >::type* = 0) -#endif +#endif // _LIBCPP_MOVE  {  #ifndef _LIBCPP_NO_EXCEPTIONS  throw __nested<typename remove_reference<_Tp>::type>(_STD::forward<_Tp>(__t)); @@ -196,17 +196,17 @@  }    template <class _Tp> -void  +void  #ifdef _LIBCPP_MOVE  throw_with_nested /*[[noreturn]]*/ (_Tp&& __t, typename enable_if<  !is_class<typename remove_reference<_Tp>::type>::value ||  is_base_of<nested_exception, typename remove_reference<_Tp>::type>::value  >::type* = 0) -#else +#else // _LIBCPP_MOVE  throw_with_nested (_Tp& __t, typename enable_if<  !is_class<_Tp>::value || is_base_of<nested_exception, _Tp>::value  >::type* = 0) -#endif +#endif // _LIBCPP_MOVE  {  #ifndef _LIBCPP_NO_EXCEPTIONS  throw _STD::forward<_Tp>(__t); 
diff --git a/include/ext/hash_map b/include/ext/hash_map index c337442..a541d37 100644 --- a/include/ext/hash_map +++ b/include/ext/hash_map 
@@ -254,7 +254,7 @@  {return static_cast<const _Pred&>(*this)(__x, __y.first);}  bool operator()(const _Tp& __x, const typename _Tp::first_type& __y) const  {return static_cast<const _Pred&>(*this)(__x.first, __y);} - bool operator()(const typename _Tp::first_type& __x,  + bool operator()(const typename _Tp::first_type& __x,  const typename _Tp::first_type& __y) const  {return static_cast<const _Pred&>(*this)(__x, __y);}  }; @@ -312,7 +312,7 @@  {  __x.__value_constructed = false;  } -#else +#else // _LIBCPP_MOVE  __hash_map_node_destructor(const __hash_node_destructor<allocator_type>& __x)  : __na_(__x.__na_),  __first_constructed(__x.__value_constructed), @@ -320,7 +320,7 @@  {  const_cast<bool&>(__x.__value_constructed) = false;  } -#endif +#endif // _LIBCPP_MOVE    void operator()(pointer __p)  { 
diff --git a/include/forward_list b/include/forward_list index dbdc843..9e68dfd 100644 --- a/include/forward_list +++ b/include/forward_list 
@@ -214,7 +214,7 @@  typedef typename pointer_traits<__node_pointer>::element_type::value_type  value_type;  typedef value_type& reference; - typedef typename pointer_traits<__node_pointer>::difference_type  + typedef typename pointer_traits<__node_pointer>::difference_type  difference_type;  typedef typename pointer_traits<__node_pointer>::template  #ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES @@ -277,7 +277,7 @@  typedef forward_iterator_tag iterator_category;  typedef typename __node::value_type value_type;  typedef const value_type& reference; - typedef typename pointer_traits<__node_const_pointer>::difference_type  + typedef typename pointer_traits<__node_const_pointer>::difference_type  difference_type;  typedef typename pointer_traits<__node_const_pointer>::template  #ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES @@ -358,7 +358,7 @@  #ifdef _LIBCPP_MOVE  __forward_list_base(__forward_list_base&& __x);  __forward_list_base(__forward_list_base&& __x, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE    private:  __forward_list_base(const __forward_list_base&); @@ -428,7 +428,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Alloc>  __forward_list_base<_Tp, _Alloc>::~__forward_list_base() @@ -501,7 +501,7 @@  #ifdef _LIBCPP_MOVE  forward_list(forward_list&& __x) : base(_STD::move(__x)) {}  forward_list(forward_list&& __x, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE  forward_list(initializer_list<value_type> __il);  forward_list(initializer_list<value_type> __il, const allocator_type& __a);   @@ -546,7 +546,7 @@  #ifdef _LIBCPP_MOVE  template <class... _Args> void emplace_front(_Args&&... __args);  void push_front(value_type&& __v); -#endif +#endif // _LIBCPP_MOVE  void push_front(const value_type& __v);    void pop_front(); @@ -555,7 +555,7 @@  template <class... _Args>  iterator emplace_after(const_iterator __p, _Args&&... __args);  iterator insert_after(const_iterator __p, value_type&& __v); -#endif +#endif // _LIBCPP_MOVE  iterator insert_after(const_iterator __p, const value_type& __v);  iterator insert_after(const_iterator __p, size_type __n, const value_type& __v);  template <class _InputIterator> @@ -582,12 +582,12 @@  void splice_after(const_iterator __p, forward_list&& __x, const_iterator __i);  void splice_after(const_iterator __p, forward_list&& __x,  const_iterator __f, const_iterator __l); -#else +#else // _LIBCPP_MOVE  void splice_after(const_iterator __p, forward_list& __x);  void splice_after(const_iterator __p, forward_list& __x, const_iterator __i);  void splice_after(const_iterator __p, forward_list& __x,  const_iterator __f, const_iterator __l); -#endif +#endif // _LIBCPP_MOVE  void remove(const value_type& __v);  template <class _Predicate> void remove_if(_Predicate __pred);  void unique() {unique(__equal_to<value_type>());} @@ -595,10 +595,10 @@  #ifdef _LIBCPP_MOVE  void merge(forward_list&& __x) {merge(_STD::move(__x), __less<value_type>());}  template <class _Compare> void merge(forward_list&& __x, _Compare __comp); -#else +#else // _LIBCPP_MOVE  void merge(forward_list& __x) {merge(__x, __less<value_type>());}  template <class _Compare> void merge(forward_list& __x, _Compare __comp); -#endif +#endif // _LIBCPP_MOVE  void sort() {sort(__less<value_type>());}  template <class _Compare> void sort(_Compare __comp);  void reverse(); @@ -612,7 +612,7 @@  #ifdef _LIBCPP_MOVE  void __move_assign(forward_list& __x, true_type);  void __move_assign(forward_list& __x, false_type); -#endif +#endif // _LIBCPP_MOVE    template <class _Compare>  static @@ -719,7 +719,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Alloc>  forward_list<_Tp, _Alloc>::forward_list(initializer_list<value_type> __il) @@ -782,7 +782,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Alloc>  inline @@ -864,7 +864,7 @@  base::__before_begin()->__next_ = __h.release();  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Alloc>  void @@ -921,7 +921,7 @@  return iterator(__r->__next_);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Alloc>  typename forward_list<_Tp, _Alloc>::iterator @@ -954,7 +954,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (--__n; __n != 0; --__n, __last = __last->__next_)  {  __h.reset(__node_traits::allocate(__a, 1)); @@ -974,7 +974,7 @@  }  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __last->__next_ = __r->__next_;  __r->__next_ = __first;  __r = __last; @@ -1004,7 +1004,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (++__f; __f != __l; ++__f, __last = __last->__next_)  {  __h.reset(__node_traits::allocate(__a, 1)); @@ -1024,7 +1024,7 @@  }  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __last->__next_ = __r->__next_;  __r->__next_ = __first;  __r = __last; 
diff --git a/include/fstream b/include/fstream index 1d7d221..0eae705 100644 --- a/include/fstream +++ b/include/fstream 
@@ -122,7 +122,7 @@  void close();  };   -template <class charT, class traits>  +template <class charT, class traits>  void  swap(basic_ofstream<charT, traits>& x, basic_ofstream<charT, traits>& y);   @@ -333,7 +333,7 @@  swap(__rhs);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  basic_filebuf<_CharT, _Traits>::~basic_filebuf() @@ -341,14 +341,14 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  close();  #ifndef _LIBCPP_NO_EXCEPTIONS  }  catch (...)  {  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__owns_eb_)  delete [] __extbuf_;  if (__owns_ib_) @@ -1035,7 +1035,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  inline _LIBCPP_INLINE_VISIBILITY @@ -1180,7 +1180,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  inline _LIBCPP_INLINE_VISIBILITY @@ -1325,7 +1325,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  inline _LIBCPP_INLINE_VISIBILITY 
diff --git a/include/functional b/include/functional index 30063f4..b9378aa 100644 --- a/include/functional +++ b/include/functional 
@@ -186,18 +186,18 @@  template<class T> struct is_bind_expression;  template<class T> struct is_placeholder;   -template<class Fn, class... BoundArgs>  +template<class Fn, class... BoundArgs>  unspecified bind(Fn&&, BoundArgs&&...); -template<class R, class Fn, class... BoundArgs>  +template<class R, class Fn, class... BoundArgs>  unspecified bind(Fn&&, BoundArgs&&...);   -namespace placeholders {  - // M is the implementation-defined number of placeholders  +namespace placeholders { + // M is the implementation-defined number of placeholders  extern unspecified _1;  extern unspecified _2; - .  - .  - .  + . + . + .  extern unspecified _M;  }   @@ -415,21 +415,21 @@  template <typename T> const T* target() const;  };   -// Null pointer comparisons:  -template <class R, class ... ArgTypes>  +// Null pointer comparisons: +template <class R, class ... ArgTypes>  bool operator==(const function<R(ArgTypes...)>&, nullptr_t);   -template <class R, class ... ArgTypes>  +template <class R, class ... ArgTypes>  bool operator==(nullptr_t, const function<R(ArgTypes...)>&);   -template <class R, class ... ArgTypes>  +template <class R, class ... ArgTypes>  bool operator!=(const function<R(ArgTypes...)>&, nullptr_t);   -template <class R, class ... ArgTypes>  +template <class R, class ... ArgTypes>  bool operator!=(nullptr_t, const function<R(ArgTypes...)>&);   -// specialized algorithms:  -template <class R, class ... ArgTypes>  +// specialized algorithms: +template <class R, class ... ArgTypes>  void swap(function<R(ArgTypes...)>&, function<R(ArgTypes...)>&);    template <class T> struct hash; @@ -861,7 +861,6 @@  mem_fun_ref(_Sp (_Tp::*__f)(_Ap) const)  {return const_mem_fun1_ref_t<_Sp,_Tp,_Ap>(__f);}   -  #ifdef _LIBCPP_HAS_NO_VARIADICS    #include <__functional_03> @@ -982,7 +981,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const = 0;  virtual const std::type_info& target_type() const = 0; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _FD, class _Alloc, class _FB> class __func; @@ -1003,7 +1002,7 @@  #ifndef _LIBCPP_NO_RTTI  virtual const void* target(const type_info&) const;  virtual const std::type_info& target_type() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _F, class _Alloc, class _R, class ..._ArgTypes> @@ -1067,7 +1066,7 @@  return typeid(_F);  }   -#endif +#endif // _LIBCPP_NO_RTTI    } // __function   @@ -1154,7 +1153,7 @@  const std::type_info& target_type() const;  template <typename _T> _T* target();  template <typename _T> const _T* target() const; -#endif +#endif // _LIBCPP_NO_RTTI  };    template<class _R, class ..._ArgTypes> @@ -1390,7 +1389,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__f_ == 0)  throw bad_function_call(); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return (*__f_)(_STD::forward<_ArgTypes>(__arg)...);  }   @@ -1425,29 +1424,29 @@  return (const _T*)__f_->target(typeid(_T));  }   -#endif +#endif // _LIBCPP_NO_RTTI   -template <class _R, class... _ArgTypes>  +template <class _R, class... _ArgTypes>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator==(const function<_R(_ArgTypes...)>& __f, nullptr_t) {return !__f;}   -template <class _R, class... _ArgTypes>  +template <class _R, class... _ArgTypes>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator==(nullptr_t, const function<_R(_ArgTypes...)>& __f) {return !__f;}   -template <class _R, class... _ArgTypes>  +template <class _R, class... _ArgTypes>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator!=(const function<_R(_ArgTypes...)>& __f, nullptr_t) {return (bool)__f;}   -template <class _R, class... _ArgTypes>  +template <class _R, class... _ArgTypes>  inline _LIBCPP_INLINE_VISIBILITY  bool  operator!=(nullptr_t, const function<_R(_ArgTypes...)>& __f) {return (bool)__f;}   -template <class _R, class... _ArgTypes>  +template <class _R, class... _ArgTypes>  inline _LIBCPP_INLINE_VISIBILITY  void  swap(function<_R(_ArgTypes...)>& __x, function<_R(_ArgTypes...)>& __y) @@ -1500,7 +1499,6 @@  typedef typename result_of<_Ti(_Uj...)>::type type;  };   -  template <class _Ti, class ..._Uj, size_t ..._Indx>  inline _LIBCPP_INLINE_VISIBILITY  typename __mu_return1<true, _Ti, _Uj...>::type @@ -1638,7 +1636,7 @@  return __invoke(__f, __mu(get<_Indx>(__bound_args), __args)...);  }   -template<class _F, class ..._BoundArgs>  +template<class _F, class ..._BoundArgs>  class __bind  : public __weak_result_type<_F>  { @@ -1661,7 +1659,7 @@  operator()(_Args&& ...__args)  {  // compiler bug workaround - return __apply_functor(__f_, __bound_args_, __indices(),  + return __apply_functor(__f_, __bound_args_, __indices(),  tuple<_Args&&...>(__args...));  }   @@ -1669,15 +1667,15 @@  typename __bind_return<_F, tuple<_BoundArgs...>, tuple<_Args&&...> >::type  operator()(_Args&& ...__args) const  { - return __apply_functor(__f_, __bound_args_, __indices(),  + return __apply_functor(__f_, __bound_args_, __indices(),  tuple<_Args&&...>(__args...));  }  };   -template<class _F, class ..._BoundArgs>  +template<class _F, class ..._BoundArgs>  struct __is_bind_expression<__bind<_F, _BoundArgs...> > : public true_type {};   -template<class _R, class _F, class ..._BoundArgs>  +template<class _R, class _F, class ..._BoundArgs>  class __bind_r  : public __bind<_F, _BoundArgs...>  { @@ -1705,10 +1703,10 @@  }  };   -template<class _R, class _F, class ..._BoundArgs>  +template<class _R, class _F, class ..._BoundArgs>  struct __is_bind_expression<__bind_r<_R, _F, _BoundArgs...> > : public true_type {};   -template<class _F, class ..._BoundArgs>  +template<class _F, class ..._BoundArgs>  inline _LIBCPP_INLINE_VISIBILITY  __bind<typename decay<_F>::type, typename decay<_BoundArgs>::type...>  bind(_F&& __f, _BoundArgs&&... __bound_args) @@ -1717,7 +1715,7 @@  return type(_STD::forward<_F>(__f), _STD::forward<_BoundArgs>(__bound_args)...);  }   -template<class _R, class _F, class ..._BoundArgs>  +template<class _R, class _F, class ..._BoundArgs>  inline _LIBCPP_INLINE_VISIBILITY  __bind_r<_R, typename decay<_F>::type, typename decay<_BoundArgs>::type...>  bind(_F&& __f, _BoundArgs&&... __bound_args) @@ -1772,7 +1770,7 @@  size_t operator()(char32_t __v) const {return static_cast<size_t>(__v);}  };   -#endif +#endif // _LIBCPP_HAS_NO_UNICODE_CHARS    template <>  struct hash<wchar_t> 
diff --git a/include/iomanip b/include/iomanip index 4a677ef..3efce13 100644 --- a/include/iomanip +++ b/include/iomanip 
@@ -270,7 +270,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __s(__is);  if (__s)  { @@ -287,7 +287,7 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }   @@ -329,7 +329,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<_CharT, _Traits>::sentry __s(__os);  if (__s)  { @@ -345,7 +345,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -387,7 +387,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __s(__is);  if (__s)  { @@ -405,7 +405,7 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }   @@ -447,7 +447,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<_CharT, _Traits>::sentry __s(__os);  if (__s)  { @@ -464,7 +464,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   
diff --git a/include/ios b/include/ios index 47c20cb..d0016be 100644 --- a/include/ios +++ b/include/ios 
@@ -310,13 +310,13 @@  iostate rdstate() const;  void clear(iostate __state = goodbit);  void setstate(iostate __state); -  - bool good() const;  - bool eof() const;  - bool fail() const;  - bool bad() const;    - iostate exceptions() const;  + bool good() const; + bool eof() const; + bool fail() const; + bool bad() const; + + iostate exceptions() const;  void exceptions(iostate __except);    void __set_badbit_and_consider_rethrow(); @@ -402,10 +402,10 @@    class ios_base::failure  : public system_error -{  -public:  +{ +public:  explicit failure(const string& __msg, const error_code& __ec = io_errc::stream); - explicit failure(const char* __msg, const error_code& __ec = io_errc::stream);  + explicit failure(const char* __msg, const error_code& __ec = io_errc::stream);  virtual ~failure() throw();  };   
diff --git a/include/iosfwd b/include/iosfwd index 32f679e..a4d3f38 100644 --- a/include/iosfwd +++ b/include/iosfwd 
@@ -158,7 +158,7 @@  #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS  typedef fpos<mbstate_t> u16streampos;  typedef fpos<mbstate_t> u32streampos; -#endif +#endif // _LIBCPP_HAS_NO_UNICODE_CHARS    typedef long long streamoff; // for char_traits in <string>   
diff --git a/include/istream b/include/istream index 4b41954..e79d6eb 100644 --- a/include/istream +++ b/include/istream 
@@ -307,7 +307,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  basic_istream<_CharT, _Traits>::~basic_istream() @@ -330,7 +330,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -346,7 +346,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -357,7 +357,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -373,7 +373,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -384,7 +384,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -400,7 +400,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -411,7 +411,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -427,7 +427,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -438,7 +438,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -454,7 +454,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -465,7 +465,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -481,7 +481,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -492,7 +492,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -508,7 +508,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -519,7 +519,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -535,7 +535,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -546,7 +546,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -562,7 +562,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -573,7 +573,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -589,7 +589,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -600,7 +600,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -616,7 +616,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -627,7 +627,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -656,7 +656,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -667,7 +667,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -696,7 +696,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -734,7 +734,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __sen(__is);  if (__sen)  { @@ -768,7 +768,7 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }   @@ -795,7 +795,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __sen(__is);  if (__sen)  { @@ -817,7 +817,7 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }   @@ -845,7 +845,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this, true);  if (__s)  { @@ -855,7 +855,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef istreambuf_iterator<char_type, traits_type> _I;  typedef ostreambuf_iterator<char_type, traits_type> _O;  _I __i(*this); @@ -880,7 +880,7 @@  if (__c == 0)  this->__set_failbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  else  this->setstate(ios_base::failbit); @@ -892,7 +892,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -905,7 +905,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this, true);  if (__s)  { @@ -932,7 +932,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __r;  }   @@ -955,7 +955,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -990,7 +990,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1011,7 +1011,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1020,7 +1020,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef istreambuf_iterator<char_type, traits_type> _I;  typedef ostreambuf_iterator<char_type, traits_type> _O;  _I __i(*this); @@ -1042,7 +1042,7 @@  catch (...)  {  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__c == 0)  __err |= ios_base::failbit;  this->setstate(__err); @@ -1054,7 +1054,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1074,7 +1074,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1112,7 +1112,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1132,7 +1132,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1172,7 +1172,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1185,7 +1185,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  __r = this->rdbuf()->sgetc(); @@ -1195,7 +1195,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __r;  }   @@ -1207,7 +1207,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1234,7 +1234,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1247,7 +1247,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1279,7 +1279,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __c;  }   @@ -1291,7 +1291,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1306,7 +1306,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1318,7 +1318,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1333,7 +1333,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1345,7 +1345,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  { @@ -1363,7 +1363,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __r;  }   @@ -1375,7 +1375,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  __r = this->rdbuf()->pubseekoff(0, ios_base::cur, ios_base::in); @@ -1385,7 +1385,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __r;  }   @@ -1396,7 +1396,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  if (this->rdbuf()->pubseekpos(__pos, ios_base::in) == pos_type(-1)) @@ -1407,7 +1407,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1418,7 +1418,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this, true);  if (__sen)  this->rdbuf()->pubseekoff(__off, __dir, ios_base::in); @@ -1428,7 +1428,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1439,7 +1439,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __sen(__is, true);  if (__sen)  { @@ -1459,7 +1459,7 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }   @@ -1474,7 +1474,7 @@  return __is;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  class basic_iostream @@ -1530,7 +1530,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  basic_iostream<_CharT, _Traits>::~basic_iostream() @@ -1553,7 +1553,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __sen(__is);  if (__sen)  { @@ -1591,19 +1591,19 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }    template<class _CharT, class _Traits, class _Allocator> -basic_istream<_CharT, _Traits>&  +basic_istream<_CharT, _Traits>&  getline(basic_istream<_CharT, _Traits>& __is,  basic_string<_CharT, _Traits, _Allocator>& __str, _CharT __dlm)  {  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __sen(__is, true);  if (__sen)  { @@ -1642,13 +1642,13 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }    template<class _CharT, class _Traits, class _Allocator>  inline -basic_istream<_CharT, _Traits>&  +basic_istream<_CharT, _Traits>&  getline(basic_istream<_CharT, _Traits>& __is,  basic_string<_CharT, _Traits, _Allocator>& __str)  { @@ -1659,7 +1659,7 @@    template<class _CharT, class _Traits, class _Allocator>  inline -basic_istream<_CharT, _Traits>&  +basic_istream<_CharT, _Traits>&  getline(basic_istream<_CharT, _Traits>&& __is,  basic_string<_CharT, _Traits, _Allocator>& __str, _CharT __dlm)  { @@ -1668,14 +1668,14 @@    template<class _CharT, class _Traits, class _Allocator>  inline -basic_istream<_CharT, _Traits>&  +basic_istream<_CharT, _Traits>&  getline(basic_istream<_CharT, _Traits>&& __is,  basic_string<_CharT, _Traits, _Allocator>& __str)  {  return getline(__is, __str, __is.widen('\n'));  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits, size_t _Size>  basic_istream<_CharT, _Traits>& @@ -1684,7 +1684,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_istream<_CharT, _Traits>::sentry __sen(__is);  if (__sen)  { @@ -1720,7 +1720,7 @@  {  __is.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __is;  }   
diff --git a/include/iterator b/include/iterator index 877474b..51f4d4f 100644 --- a/include/iterator +++ b/include/iterator 
@@ -88,7 +88,7 @@  typedef typename iterator_traits<Iterator>::difference_type difference_type;  typedef typename iterator_traits<Iterator>::reference reference;  typedef typename iterator_traits<Iterator>::pointer pointer; -  +  reverse_iterator();  explicit reverse_iterator(Iterator x);  template <class U> reverse_iterator(const reverse_iterator<U>& u); @@ -520,7 +520,7 @@  typedef typename iterator_traits<_Iter>::difference_type difference_type;  typedef typename iterator_traits<_Iter>::reference reference;  typedef typename iterator_traits<_Iter>::pointer pointer; -  +  _LIBCPP_INLINE_VISIBILITY reverse_iterator() : current() {}  _LIBCPP_INLINE_VISIBILITY explicit reverse_iterator(_Iter __x) : __t(__x), current(__x) {}  template <class _Up> _LIBCPP_INLINE_VISIBILITY reverse_iterator(const reverse_iterator<_Up>& __u) @@ -629,7 +629,7 @@  #ifdef _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator=(typename _Container::value_type&& __value)  {container->push_back(_STD::move(__value)); return *this;} -#endif +#endif // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator*() {return *this;}  _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator++() {return *this;}  _LIBCPP_INLINE_VISIBILITY back_insert_iterator operator++(int) {return *this;} @@ -662,7 +662,7 @@  #ifdef _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY front_insert_iterator& operator=(typename _Container::value_type&& __value)  {container->push_front(_STD::move(__value)); return *this;} -#endif +#endif // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY front_insert_iterator& operator*() {return *this;}  _LIBCPP_INLINE_VISIBILITY front_insert_iterator& operator++() {return *this;}  _LIBCPP_INLINE_VISIBILITY front_insert_iterator operator++(int) {return *this;} @@ -697,7 +697,7 @@  #ifdef _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY insert_iterator& operator=(typename _Container::value_type&& __value)  {iter = container->insert(iter, _STD::move(__value)); ++iter; return *this;} -#endif +#endif // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY insert_iterator& operator*() {return *this;}  _LIBCPP_INLINE_VISIBILITY insert_iterator& operator++() {return *this;}  _LIBCPP_INLINE_VISIBILITY insert_iterator& operator++(int) {return *this;} @@ -895,7 +895,7 @@  #else  typedef typename iterator_traits<iterator_type>::reference reference;  #endif -  +  _LIBCPP_INLINE_VISIBILITY move_iterator() : __i() {}  _LIBCPP_INLINE_VISIBILITY explicit move_iterator(_Iter __x) : __i(__x) {}  template <class _Up> _LIBCPP_INLINE_VISIBILITY move_iterator(const move_iterator<_Up>& __u) @@ -1091,37 +1091,37 @@  friend  bool  operator==(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&); -  +  template <class _Iter1, class _Iter2>  friend  bool  operator<(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&); -  +  template <class _Iter1, class _Iter2>  friend  bool  operator!=(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&); -  +  template <class _Iter1, class _Iter2>  friend  bool  operator>(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&); -  +  template <class _Iter1, class _Iter2>  friend  bool  operator>=(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&); -  +  template <class _Iter1, class _Iter2>  friend  bool  operator<=(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&); -  +  template <class _Iter1, class _Iter2>  friend  typename __wrap_iter<_Iter1>::difference_type  operator-(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&); -  +  template <class _Iter1>  friend  __wrap_iter<_Iter1> @@ -1260,7 +1260,7 @@  iterator_type __i;  __debug_iter* __next;  __container_type* __cont; -  +  public:  _LIBCPP_INLINE_VISIBILITY __debug_iter() : __next(0), __cont(0) {}  _LIBCPP_INLINE_VISIBILITY __debug_iter(const __debug_iter& __x) @@ -1297,7 +1297,7 @@  void __remove_owner();  static void __remove_all(__container_type* __c);  static void swap(__container_type* __x, __container_type* __y); -  +  _LIBCPP_INLINE_VISIBILITY bool __is_deref() const  {return __is_deref(__is_random_access_iterator<iterator_type>());}  bool __is_deref(false_type) const; @@ -1327,37 +1327,37 @@  friend  bool  operator==(const __debug_iter<_Cp, _Iter1>&, const __debug_iter<_Cp, _Iter2>&); -  +  template <class _Cp, class _Iter1, class _Iter2>  friend  bool  operator<(const __debug_iter<_Cp, _Iter1>&, const __debug_iter<_Cp, _Iter2>&); -  +  template <class _Cp, class _Iter1, class _Iter2>  friend  bool  operator!=(const __debug_iter<_Cp, _Iter1>&, const __debug_iter<_Cp, _Iter2>&); -  +  template <class _Cp, class _Iter1, class _Iter2>  friend  bool  operator>(const __debug_iter<_Cp, _Iter1>&, const __debug_iter<_Cp, _Iter2>&); -  +  template <class _Cp, class _Iter1, class _Iter2>  friend  bool  operator>=(const __debug_iter<_Cp, _Iter1>&, const __debug_iter<_Cp, _Iter2>&); -  +  template <class _Cp, class _Iter1, class _Iter2>  friend  bool  operator<=(const __debug_iter<_Cp, _Iter1>&, const __debug_iter<_Cp, _Iter2>&); -  +  template <class _Cp, class _Iter1, class _Iter2>  friend  typename __debug_iter<_Cp, _Iter1>::difference_type  operator-(const __debug_iter<_Cp, _Iter1>&, const __debug_iter<_Cp, _Iter2>&); -  +  template <class _Cp, class _Iter1>  friend  __debug_iter<_Cp, _Iter1> @@ -1376,7 +1376,7 @@  }  return *this;  } -  +  template <class _Container, class _Iter>  void  __debug_iter<_Container, _Iter>::__set_owner(const __container_type* __c) @@ -1649,7 +1649,7 @@  return __c.end();  }   -#else +#else // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_DECLTYPE)    template <class _C>  inline @@ -1683,7 +1683,7 @@  return __c.end();  }   -#endif +#endif // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_DECLTYPE)    template <class _T, size_t _N>  inline 
diff --git a/include/list b/include/list index 41d20f8..2fb90aa 100644 --- a/include/list +++ b/include/list 
@@ -505,7 +505,7 @@  list(list&& __c);  list(list&& __c, const allocator_type& __a);  list& operator=(list&& __c); -#endif +#endif // _LIBCPP_MOVE  list& operator=(initializer_list<value_type> __il)  {assign(__il.begin(), __il.end()); return *this;}   @@ -551,7 +551,7 @@  template <class... _Args>  iterator emplace(const_iterator __p, _Args&&... __args);  iterator insert(const_iterator __p, value_type&& __x); -#endif +#endif // _LIBCPP_MOVE    void push_front(const value_type& __x);  void push_back(const value_type& __x); @@ -584,12 +584,12 @@  #ifdef _LIBCPP_MOVE  void splice(const_iterator __p, list&& __c, const_iterator __i)  {splice(__p, __c, __i);} -#endif +#endif // _LIBCPP_MOVE  void splice(const_iterator __p, list& __c, const_iterator __f, const_iterator __l);  #ifdef _LIBCPP_MOVE  void splice(const_iterator __p, list&& __c, const_iterator __f, const_iterator __l)  {splice(__p, __c, __f, __l);} -#endif +#endif // _LIBCPP_MOVE    void remove(const value_type& __x);  template <class _Pred> void remove_if(_Pred __pred); @@ -605,7 +605,7 @@  #ifdef _LIBCPP_MOVE  template <class _Comp>  void merge(list&& __c, _Comp __comp) {merge(__c, __comp);} -#endif +#endif // _LIBCPP_MOVE  void sort();  template <class _Comp>  void sort(_Comp __comp); @@ -792,7 +792,7 @@  splice(end(), __c);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Alloc>  template <class _InpIter> @@ -866,7 +866,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (--__n; __n != 0; --__n, ++__e, ++__ds)  {  __hold.reset(__node_alloc_traits::allocate(__na, 1)); @@ -890,7 +890,7 @@  }  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __link_nodes(const_cast<__node&>(*__p.__ptr_), *__r.__ptr_, *__e.__ptr_);  base::__sz() += __ds;  } @@ -919,7 +919,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (++__f; __f != __l; ++__f, ++__e, ++__ds)  {  __hold.reset(__node_alloc_traits::allocate(__na, 1)); @@ -943,7 +943,7 @@  }  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __link_nodes(const_cast<__node&>(*__p.__ptr_), *__r.__ptr_, *__e.__ptr_);  base::__sz() += __ds;  } @@ -1061,7 +1061,7 @@  return iterator(__hold.release());  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Alloc>  void @@ -1142,7 +1142,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (--__n; __n != 0; --__n, ++__e, ++__ds)  {  __hold.reset(__node_alloc_traits::allocate(__na, 1)); @@ -1166,7 +1166,7 @@  }  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __link_nodes(static_cast<__node&>(base::__end_), *__r.__ptr_, *__e.__ptr_);  base::__sz() += __ds;  } @@ -1193,7 +1193,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (--__n; __n != 0; --__n, ++__e, ++__ds)  {  __hold.reset(__node_alloc_traits::allocate(__na, 1)); @@ -1217,10 +1217,10 @@  }  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __link_nodes(static_cast<__node&>(base::__end_), *__r.__ptr_, *__e.__ptr_);  base::__sz() += __ds; - }  + }  }    template <class _Tp, class _Alloc> 
diff --git a/include/locale b/include/locale index b86143e..1bef153 100644 --- a/include/locale +++ b/include/locale 
@@ -264,7 +264,7 @@  return isdigit_l(__c, 0);  }   -#else /* !__APPLE__ */ +#else // __APPLE__  inline int  __nolocale_sprintf(char* __restrict __str,  const char* __restrict __format, ...) @@ -315,7 +315,7 @@  {  return isdigit(__c);  } -#endif /* __APPLE__ */ +#endif // __APPLE__    // __scan_keyword  // Scans [__b, __e) until a match is found in the basic_strings range @@ -456,7 +456,6 @@  void __check_grouping(const string& __grouping, unsigned* __g, unsigned* __g_end,  ios_base::iostate& __err);   -  template <class _CharT>  struct __num_get  : protected __num_get_base @@ -836,7 +835,7 @@  unsigned* __g_end = __g;  unsigned __dc = 0;  for (; __b != __e; ++__b) - if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  + if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  __thousands_sep, __grouping, __g, __g_end,  __atoms))  break; @@ -871,8 +870,8 @@  unsigned* __g_end = __g;  unsigned __dc = 0;  for (; __b != __e; ++__b) - if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  - __thousands_sep, __grouping, __g, __g_end,  + if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc, + __thousands_sep, __grouping, __g, __g_end,  __atoms))  break;  if (__grouping.size() != 0 && __g_end-__g < __num_get_base::__num_get_buf_sz) @@ -906,7 +905,7 @@  unsigned* __g_end = __g;  unsigned __dc = 0;  for (; __b != __e; ++__b) - if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  + if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  __thousands_sep, __grouping, __g, __g_end,  __atoms))  break; @@ -941,7 +940,7 @@  unsigned* __g_end = __g;  unsigned __dc = 0;  for (; __b != __e; ++__b) - if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  + if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  __thousands_sep, __grouping, __g, __g_end,  __atoms))  break; @@ -976,7 +975,7 @@  unsigned* __g_end = __g;  unsigned __dc = 0;  for (; __b != __e; ++__b) - if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  + if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  __thousands_sep, __grouping, __g, __g_end,  __atoms))  break; @@ -1011,7 +1010,7 @@  unsigned* __g_end = __g;  unsigned __dc = 0;  for (; __b != __e; ++__b) - if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  + if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  __thousands_sep, __grouping, __g, __g_end,  __atoms))  break; @@ -1039,8 +1038,8 @@  char_type __atoms[32];  char_type __decimal_point;  char_type __thousands_sep; - string __grouping = this->__stage2_float_prep(__iob, __atoms,  - __decimal_point,  + string __grouping = this->__stage2_float_prep(__iob, __atoms, + __decimal_point,  __thousands_sep);  char __a[__num_get_base::__num_get_buf_sz] = {0};  char* __a_end = __a; @@ -1050,8 +1049,8 @@  bool __in_units = true;  char __exp = 'E';  for (; __b != __e; ++__b) - if (this->__stage2_float_loop(*__b, __in_units, __exp, __a, __a_end,  - __decimal_point, __thousands_sep,  + if (this->__stage2_float_loop(*__b, __in_units, __exp, __a, __a_end, + __decimal_point, __thousands_sep,  __grouping, __g, __g_end,  __dc, __atoms))  break; @@ -1079,8 +1078,8 @@  char_type __atoms[32];  char_type __decimal_point;  char_type __thousands_sep; - string __grouping = this->__stage2_float_prep(__iob, __atoms,  - __decimal_point,  + string __grouping = this->__stage2_float_prep(__iob, __atoms, + __decimal_point,  __thousands_sep);  char __a[__num_get_base::__num_get_buf_sz] = {0};  char* __a_end = __a; @@ -1090,8 +1089,8 @@  bool __in_units = true;  char __exp = 'E';  for (; __b != __e; ++__b) - if (this->__stage2_float_loop(*__b, __in_units, __exp, __a, __a_end,  - __decimal_point, __thousands_sep,  + if (this->__stage2_float_loop(*__b, __in_units, __exp, __a, __a_end, + __decimal_point, __thousands_sep,  __grouping, __g, __g_end,  __dc, __atoms))  break; @@ -1119,7 +1118,7 @@  char_type __atoms[32];  char_type __decimal_point;  char_type __thousands_sep; - string __grouping = this->__stage2_float_prep(__iob, __atoms,  + string __grouping = this->__stage2_float_prep(__iob, __atoms,  __decimal_point,  __thousands_sep);  char __a[__num_get_base::__num_get_buf_sz] = {0}; @@ -1130,8 +1129,8 @@  bool __in_units = true;  char __exp = 'E';  for (; __b != __e; ++__b) - if (this->__stage2_float_loop(*__b, __in_units, __exp, __a, __a_end,  - __decimal_point, __thousands_sep,  + if (this->__stage2_float_loop(*__b, __in_units, __exp, __a, __a_end, + __decimal_point, __thousands_sep,  __grouping, __g, __g_end,  __dc, __atoms))  break; @@ -1168,8 +1167,8 @@  unsigned* __g_end = __g;  unsigned __dc = 0;  for (; __b != __e; ++__b) - if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc,  - __thousands_sep, __grouping,  + if (this->__stage2_int_loop(*__b, __base, __a, __a_end, __dc, + __thousands_sep, __grouping,  __g, __g_end, __atoms))  break;  // Stage 3 @@ -2779,7 +2778,7 @@  protected:    ~money_get() {} -  +  virtual iter_type do_get(iter_type __b, iter_type __e, bool __intl,  ios_base& __iob, ios_base::iostate& __err,  long double& __v) const; @@ -2867,7 +2866,7 @@  return false;  }  } - // drop through  + // drop through  case money_base::none:  if (__p != 3)  { @@ -3629,7 +3628,7 @@  __wc.__cvtptr_ = nullptr;  }   -#endif +#endif // _LIBCPP_MOVE    template<class _Codecvt, class _Elem, class _Wide_alloc, class _Byte_alloc>  wstring_convert<_Codecvt, _Elem, _Wide_alloc, _Byte_alloc>::~wstring_convert() @@ -3693,7 +3692,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__wide_err_string_.empty())  throw range_error("wstring_convert: from_bytes error"); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __wide_err_string_;  }   @@ -3781,7 +3780,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__byte_err_string_.empty())  throw range_error("wstring_convert: to_bytes error"); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __byte_err_string_;  }   
diff --git a/include/map b/include/map index fd06c21..6fe4bcd 100644 --- a/include/map +++ b/include/map 
@@ -375,8 +375,6 @@  bool operator()(const _Key& __x, const _Key& __y) const  {return static_cast<const _Compare&>(*this)(__x, __y);}   - -  // bool operator()(const _Tp& __x, const _Tp& __y) const  // {return static_cast<const _Compare&>(*this)(__x.first, __y.first);}  // bool operator()(const typename _Tp::first_type& __x, const _Tp& __y) const @@ -420,8 +418,6 @@  bool operator()(const _Key& __x, const _Key& __y) const  {return comp(__x, __y);}   - -  // bool operator()(const _Tp& __x, const _Tp& __y) const  // {return comp(__x.first, __y.first);}  // bool operator()(const typename _Tp::first_type& __x, const _Tp& __y) const @@ -467,7 +463,7 @@  {  __x.__value_constructed = false;  } -#endif +#endif // _LIBCPP_MOVE    void operator()(pointer __p)  { @@ -709,7 +705,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    explicit map(const allocator_type& __a)  : __tree_(__a) @@ -794,7 +790,7 @@  iterator insert(const_iterator __pos, _P&& __p)  {return __tree_.__insert_unique(__pos.__i_, _STD::forward<_P>(__p));}   -#endif +#endif // _LIBCPP_MOVE    pair<iterator, bool>  insert(const value_type& __v) {return __tree_.__insert_unique(__v);} @@ -857,7 +853,7 @@  template <class _A0, class ..._Args,  class = typename enable_if<is_convertible<_A0, key_type>::value>::type>  __node_holder __construct_node(_A0&& __a0, _Args&& ...__args); -#else +#else // _LIBCPP_MOVE  __node_holder __construct_node(const key_type& __k);  #endif   @@ -1077,7 +1073,7 @@  return __h;  }   -#else +#else // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Compare, class _Allocator>  typename map<_Key, _Tp, _Compare, _Allocator>::__node_holder @@ -1092,7 +1088,7 @@  return _STD::move(__h);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Compare, class _Allocator>  _Tp& @@ -1128,7 +1124,7 @@  return __r->__value_.second;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Compare, class _Allocator>  _Tp& @@ -1139,7 +1135,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__child == nullptr)  throw out_of_range("map::at: key not found"); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return static_cast<__node_pointer>(__child)->__value_.second;  }   @@ -1152,7 +1148,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__child == nullptr)  throw out_of_range("map::at: key not found"); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return static_cast<__node_const_pointer>(__child)->__value_.second;  }   @@ -1189,7 +1185,7 @@  return __r;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Compare, class _Allocator>  inline @@ -1368,7 +1364,7 @@  __tree_.__assign_multi(__il.begin(), __il.end());  return *this;  } -#endif +#endif // _LIBCPP_MOVE    explicit multimap(const allocator_type& __a)  : __tree_(__a) @@ -1443,7 +1439,7 @@  iterator insert(const_iterator __pos, _P&& __p)  {return __tree_.__insert_multi(__pos.__i_, _STD::forward<_P>(__p));}   -#endif +#endif // _LIBCPP_MOVE    iterator insert(const value_type& __v) {return __tree_.__insert_multi(__v);}   @@ -1501,7 +1497,7 @@  template <class _A0, class ..._Args,  class = typename enable_if<is_convertible<_A0, key_type>::value>::type>  __node_holder __construct_node(_A0&& __a0, _Args&& ...__args); -#endif +#endif // _LIBCPP_MOVE  };    #ifdef _LIBCPP_MOVE @@ -1563,7 +1559,7 @@  return __h;  }   -#endif +#endif // _LIBCPP_MOVE    #ifdef _LIBCPP_MOVE   @@ -1597,7 +1593,7 @@  return __r;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Compare, class _Allocator>  inline 
diff --git a/include/memory b/include/memory index 8ee0dd1..db80d41 100644 --- a/include/memory +++ b/include/memory 
@@ -28,9 +28,9 @@  typedef Ptr pointer;  typedef <details> element_type;  typedef <details> difference_type; -  +  template <class U> using rebind = <details>; -  +  static pointer pointer_to(<details>);  };   @@ -259,7 +259,7 @@  unique_ptr(nullptr_t) : unique_ptr() { }    // destructor - ∼unique_ptr(); + ~unique_ptr();    // assignment  unique_ptr& operator=(unique_ptr&& u); @@ -531,7 +531,7 @@    // allocator_arg_t   -struct allocator_arg_t { };  +struct allocator_arg_t { };    extern const allocator_arg_t allocator_arg;   @@ -558,7 +558,6 @@  template <class _Up> struct rebind {typedef allocator<_Up> other;};  };   -  // pointer_traits    template <class _Tp> @@ -595,7 +594,7 @@  typedef _Tp type;  };   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template <template <class> class _Sp, class _Tp>  struct __pointer_traits_element_type<_Sp<_Tp>, true> @@ -647,7 +646,7 @@  typedef _Tp type;  };   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    template <class _Tp>  struct __has_difference_type @@ -711,7 +710,7 @@  typedef _Sp<_Up, _Args...> type;  };   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template <template <class> class _Sp, class _Tp, class _Up>  struct __pointer_traits_rebind<_Sp<_Tp>, _Up, true> @@ -781,7 +780,7 @@  typedef _Sp<_Up, _A0, _A1, _A2> type;  };   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    template <class _Ptr>  struct pointer_traits @@ -795,7 +794,7 @@  #else  template <class _Up> struct rebind  {typedef typename __pointer_traits_rebind<pointer, _Up>::type other;}; -#endif +#endif // _LIBCPP_HAS_NO_TEMPLATE_ALIASES    private:  struct __nat {}; @@ -1089,7 +1088,7 @@  typedef _Alloc<_Up, _Args...> type;  };   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template <template <class> class _Alloc, class _Tp, class _Up>  struct __allocator_traits_rebind<_Alloc<_Tp>, _Up, true> @@ -1103,7 +1102,6 @@  typedef _Alloc<_Up> type;  };   -  template <template <class, class> class _Alloc, class _Tp, class _A0, class _Up>  struct __allocator_traits_rebind<_Alloc<_Tp, _A0>, _Up, true>  { @@ -1116,7 +1114,6 @@  typedef _Alloc<_Up, _A0> type;  };   -  template <template <class, class, class> class _Alloc, class _Tp, class _A0,  class _A1, class _Up>  struct __allocator_traits_rebind<_Alloc<_Tp, _A0, _A1>, _Up, true> @@ -1131,7 +1128,6 @@  typedef _Alloc<_Up, _A0, _A1> type;  };   -  template <template <class, class, class, class> class _Alloc, class _Tp, class _A0,  class _A1, class _A2, class _Up>  struct __allocator_traits_rebind<_Alloc<_Tp, _A0, _A1, _A2>, _Up, true> @@ -1146,7 +1142,7 @@  typedef _Alloc<_Up, _A0, _A1, _A2> type;  };   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    #ifndef _LIBCPP_HAS_NO_ADVANCED_SFINAE   @@ -1171,7 +1167,7 @@  {  };   -#else +#else // _LIBCPP_HAS_NO_ADVANCED_SFINAE    template <class _Alloc, class _SizeType, class _ConstVoidPtr>  struct __has_allocate_hint @@ -1179,7 +1175,7 @@  {  };   -#endif +#endif // _LIBCPP_HAS_NO_ADVANCED_SFINAE    #ifndef _LIBCPP_HAS_NO_ADVANCED_SFINAE   @@ -1262,8 +1258,7 @@  {  };   -#else - +#else // _LIBCPP_HAS_NO_ADVANCED_SFINAE    #ifndef _LIBCPP_HAS_NO_VARIADICS   @@ -1273,7 +1268,7 @@  {  };   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    template <class _Alloc, class _Pointer>  struct __has_destroy @@ -1293,7 +1288,7 @@  {  };   -#endif +#endif // _LIBCPP_HAS_NO_ADVANCED_SFINAE    template <class _Alloc>  struct allocator_traits @@ -1320,12 +1315,12 @@  template <class _Tp> using rebind_alloc =  __allocator_traits_rebind<allocator_type, _Tp>::type;  template <class _Tp> using rebind_traits = allocator_traits<rebind_alloc<_Tp>>; -#else +#else // _LIBCPP_HAS_NO_TEMPLATE_ALIASES  template <class _Tp> struct rebind_alloc  {typedef typename __allocator_traits_rebind<allocator_type, _Tp>::type other;};  template <class _Tp> struct rebind_traits  {typedef allocator_traits<typename rebind_alloc<_Tp>::other> other;}; -#endif +#endif // _LIBCPP_HAS_NO_TEMPLATE_ALIASES    static pointer allocate(allocator_type& __a, size_type __n)  {return __a.allocate(__n);} @@ -1341,7 +1336,7 @@  static void construct(allocator_type& __a, _Tp* __p, _Args&&... __args)  {__construct(__has_construct<allocator_type, pointer, _Args...>(),  __a, __p, _STD::forward<_Args>(__args)...);} -#else +#else // _LIBCPP_HAS_NO_VARIADICS  template <class _Tp>  static void construct(allocator_type& __a, _Tp* __p)  { @@ -1364,7 +1359,7 @@  {  ::new ((void*)__p) _Tp(__a0, __a1, __a2);  } -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    template <class _Tp>  static void destroy(allocator_type& __a, _Tp* __p) @@ -1397,7 +1392,7 @@  {  ::new ((void*)__p) _Tp(_STD::forward<_Args>(__args)...);  } -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    template <class _Tp>  static void __destroy(true_type, allocator_type& __a, _Tp* __p) @@ -1471,7 +1466,7 @@  : integral_constant<int, __uses_alloc_ctor_imp<_Tp, _Alloc, _Args...>::value>  {};   -#endif +#endif // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)    // allocator   @@ -1505,7 +1500,7 @@  {  ::new((void*)__p) _Up(_STD::forward<_Args>(__args)...);  } -#else +#else // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY  void  construct(pointer __p) @@ -1573,7 +1568,7 @@  {  ::new((void*)__p) _Tp(__a0, __a1);  } -#endif +#endif // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY void destroy(pointer __p) {__p->~_Tp();}  };   @@ -1689,7 +1684,6 @@  typedef void element_type;  };   -  template <class _T1, class _T2, bool = is_same<typename remove_cv<_T1>::type,  typename remove_cv<_T2>::type>::value,  bool = is_empty<_T1>::value, @@ -1741,7 +1735,7 @@  #ifdef _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)  : __first_(_STD::forward<_T1>(__p.first())), __second_(_STD::forward<_T2>(__p.second())) {} -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY _T1_reference first() {return __first_;}  _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return __first_;} @@ -1784,7 +1778,7 @@  #ifdef _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)  : _T1(_STD::move(__p.first())), __second_(_STD::forward<_T2>(__p.second())) {} -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY _T1_reference first() {return *this;}  _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return *this;} @@ -1826,7 +1820,7 @@  #ifdef _LIBCPP_MOVE  __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)  : _T2(_STD::forward<_T2>(__p.second())), __first_(_STD::move(__p.first())) {} -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY _T1_reference first() {return __first_;}  _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return __first_;} @@ -1867,7 +1861,7 @@  #ifdef _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)  : _T1(_STD::move(__p.first())), _T2(_STD::move(__p.second())) {} -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY _T1_reference first() {return *this;}  _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return *this;} @@ -1906,7 +1900,7 @@  #ifdef _LIBCPP_MOVE  __compressed_pair(__compressed_pair&& __p)  : base(_STD::move(__p)) {} -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY _T1_reference first() {return base::first();}  _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return base::first();} @@ -1966,14 +1960,14 @@  unique_ptr(const unique_ptr<_Up, _Ep>&);  template <class _Up, class _Ep>  unique_ptr& operator=(const unique_ptr<_Up, _Ep>&); -#else +#else // _LIBCPP_MOVE  unique_ptr(unique_ptr&);  template <class _Up, class _Ep>  unique_ptr(unique_ptr<_Up, _Ep>&);  unique_ptr& operator=(unique_ptr&);  template <class _Up, class _Ep>  unique_ptr& operator=(unique_ptr<_Up, _Ep>&); -#endif +#endif // _LIBCPP_MOVE    struct __nat {int __for_bool_;};   @@ -2060,7 +2054,7 @@  __ptr_.second() = _STD::forward<_Ep>(__u.get_deleter());  return *this;  } -#else +#else // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY operator __rv<unique_ptr>()  { @@ -2091,7 +2085,7 @@  operator=(auto_ptr<_Up> __p)  {reset(__p.release()); return *this;}   -#endif +#endif // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY ~unique_ptr() {reset();}    _LIBCPP_INLINE_VISIBILITY unique_ptr& operator=(nullptr_t) @@ -2139,14 +2133,14 @@  #ifdef _LIBCPP_MOVE  unique_ptr(const unique_ptr&);  unique_ptr& operator=(const unique_ptr&); -#else +#else // _LIBCPP_MOVE  unique_ptr(unique_ptr&);  template <class _Up>  unique_ptr(unique_ptr<_Up>&);  unique_ptr& operator=(unique_ptr&);  template <class _Up>  unique_ptr& operator=(unique_ptr<_Up>&); -#endif +#endif // _LIBCPP_MOVE    struct __nat {int __for_bool_;};   @@ -2216,7 +2210,7 @@  __ptr_.second() = _STD::forward<deleter_type>(__u.get_deleter());  return *this;  } -#else +#else // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY explicit unique_ptr(pointer __p)  : __ptr_(__p) @@ -2246,7 +2240,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY ~unique_ptr() {reset();}    _LIBCPP_INLINE_VISIBILITY unique_ptr& operator=(nullptr_t) @@ -2294,7 +2288,7 @@  if (__tmp)  __ptr_.second()(__tmp);  } -#else +#else // _LIBCPP_MOVE  _LIBCPP_INLINE_VISIBILITY void reset(pointer __p = pointer())  {  pointer __tmp = __ptr_.first(); @@ -2302,11 +2296,11 @@  if (__tmp)  __ptr_.second()(__tmp);  } -#endif +#endif // _LIBCPP_MOVE    _LIBCPP_INLINE_VISIBILITY void swap(unique_ptr& __u) {__ptr_.swap(__u.__ptr_);}  private: -  +  #ifndef _LIBCPP_MOVE  template <class _Up>  explicit unique_ptr(_Up); @@ -2321,7 +2315,7 @@  is_convertible<_Up, pointer>::value,  __nat  >::type = __nat()); -#endif +#endif // _LIBCPP_MOVE  };    template <class _Tp, class _Dp> @@ -2572,7 +2566,7 @@  return __t == typeid(_Dp) ? &__data_.first().second() : 0;  }   -#endif +#endif // _LIBCPP_NO_RTTI    template <class _Tp, class _Dp, class _Alloc>  void @@ -2653,8 +2647,8 @@  template<class _Tp>  class shared_ptr  { -public:  - typedef _Tp element_type;  +public: + typedef _Tp element_type;  private:  element_type* __ptr_;  __shared_weak_count* __cntrl_; @@ -2664,58 +2658,60 @@  shared_ptr();  shared_ptr(nullptr_t);  template<class _Yp> explicit shared_ptr(_Yp* __p); - template<class _Yp, class _Dp> shared_ptr(_Yp* __p, _Dp __d);  - template<class _Yp, class _Dp, class _Alloc> shared_ptr(_Yp* __p, _Dp __d, _Alloc __a);  + template<class _Yp, class _Dp> shared_ptr(_Yp* __p, _Dp __d); + template<class _Yp, class _Dp, class _Alloc> shared_ptr(_Yp* __p, _Dp __d, _Alloc __a);  template <class _Dp> shared_ptr(nullptr_t __p, _Dp __d);  template <class _Dp, class _Alloc> shared_ptr(nullptr_t __p, _Dp __d, _Alloc __a); - template<class _Yp> shared_ptr(const shared_ptr<_Yp>& __r, element_type *__p);  + template<class _Yp> shared_ptr(const shared_ptr<_Yp>& __r, element_type *__p);  shared_ptr(const shared_ptr& __r);  template<class _Yp>  shared_ptr(const shared_ptr<_Yp>& __r,  typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat()); -#ifdef _LIBCPP_MOVE  +#ifdef _LIBCPP_MOVE  shared_ptr(shared_ptr&& __r);  template<class _Yp> shared_ptr(shared_ptr<_Yp>&& __r, - typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat());  -#endif + typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat()); +#endif // _LIBCPP_MOVE  template<class _Yp> explicit shared_ptr(const weak_ptr<_Yp>& __r, - typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type= __nat());  -#ifdef _LIBCPP_MOVE  - template<class _Yp> shared_ptr(auto_ptr<_Yp>&& __r);  + typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type= __nat()); +#ifdef _LIBCPP_MOVE + template<class _Yp> shared_ptr(auto_ptr<_Yp>&& __r); +#else + template<class _Yp> shared_ptr(auto_ptr<_Yp> __r);  #endif -#ifdef _LIBCPP_MOVE  +#ifdef _LIBCPP_MOVE  private: - template <class _Yp, class _Dp> shared_ptr(const unique_ptr<_Yp, _Dp>& __r);// = delete;  + template <class _Yp, class _Dp> shared_ptr(const unique_ptr<_Yp, _Dp>& __r);// = delete;  public:  template <class _Yp, class _Dp> shared_ptr(unique_ptr<_Yp, _Dp>&&,  typename enable_if<!is_lvalue_reference<_Dp>::value, __nat>::type = __nat());  template <class _Yp, class _Dp> shared_ptr(unique_ptr<_Yp, _Dp>&&,  typename enable_if<is_lvalue_reference<_Dp>::value, __nat>::type = __nat()); -#else +#else // _LIBCPP_MOVE  template <class _Yp, class _Dp> shared_ptr(unique_ptr<_Yp, _Dp>,  typename enable_if<!is_lvalue_reference<_Dp>::value, __nat>::type = __nat());  template <class _Yp, class _Dp> shared_ptr(unique_ptr<_Yp, _Dp>,  typename enable_if<is_lvalue_reference<_Dp>::value, __nat>::type = __nat()); -#endif +#endif // _LIBCPP_MOVE    ~shared_ptr();   - shared_ptr& operator=(const shared_ptr& __r);  - template<class _Yp> shared_ptr& operator=(const shared_ptr<_Yp>& __r);  -#ifdef _LIBCPP_MOVE  - shared_ptr& operator=(shared_ptr&& __r);  - template<class _Yp> shared_ptr& operator=(shared_ptr<_Yp>&& __r);  - template<class _Yp> shared_ptr& operator=(auto_ptr<_Yp>&& __r);  -#else - template<class _Yp> shared_ptr& operator=(auto_ptr<_Yp> __r);  + shared_ptr& operator=(const shared_ptr& __r); + template<class _Yp> shared_ptr& operator=(const shared_ptr<_Yp>& __r); +#ifdef _LIBCPP_MOVE + shared_ptr& operator=(shared_ptr&& __r); + template<class _Yp> shared_ptr& operator=(shared_ptr<_Yp>&& __r); + template<class _Yp> shared_ptr& operator=(auto_ptr<_Yp>&& __r); +#else // _LIBCPP_MOVE + template<class _Yp> shared_ptr& operator=(auto_ptr<_Yp> __r);  #endif -#ifdef _LIBCPP_MOVE  +#ifdef _LIBCPP_MOVE  private: - template <class _Yp, class _Dp> shared_ptr& operator=(const unique_ptr<_Yp, _Dp>& __r);// = delete;  + template <class _Yp, class _Dp> shared_ptr& operator=(const unique_ptr<_Yp, _Dp>& __r);// = delete;  public: - template <class _Yp, class _Dp> shared_ptr& operator=(unique_ptr<_Yp, _Dp>&& __r);  -#else - template <class _Yp, class _Dp> shared_ptr& operator=(unique_ptr<_Yp, _Dp> __r);  + template <class _Yp, class _Dp> shared_ptr& operator=(unique_ptr<_Yp, _Dp>&& __r); +#else // _LIBCPP_MOVE + template <class _Yp, class _Dp> shared_ptr& operator=(unique_ptr<_Yp, _Dp> __r);  #endif    void swap(shared_ptr& __r); @@ -2740,7 +2736,7 @@  template <class _Dp>  _Dp* __get_deleter() const  {return (_Dp*)(__cntrl_ ? __cntrl_->__get_deleter(typeid(_Dp)) : 0);} -#endif +#endif // _LIBCPP_NO_RTTI    #ifndef _LIBCPP_HAS_NO_VARIADICS   @@ -2837,7 +2833,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef __shared_ptr_pointer<_Yp*, _Dp, allocator<_Yp> > _CntrlBlk;  __cntrl_ = new _CntrlBlk(__p, __d, allocator<_Yp>());  __enable_weak_this(__p); @@ -2848,7 +2844,7 @@  __d(__p);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    template<class _Tp> @@ -2859,7 +2855,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef __shared_ptr_pointer<nullptr_t, _Dp, allocator<_Tp> > _CntrlBlk;  __cntrl_ = new _CntrlBlk(__p, __d, allocator<_Tp>());  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2869,7 +2865,7 @@  __d(__p);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    template<class _Tp> @@ -2880,7 +2876,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef __shared_ptr_pointer<_Yp*, _Dp, _Alloc> _CntrlBlk;  typedef typename _Alloc::template rebind<_CntrlBlk>::other _A2;  typedef __allocator_destructor<_A2> _D2; @@ -2896,7 +2892,7 @@  __d(__p);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    template<class _Tp> @@ -2907,7 +2903,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef __shared_ptr_pointer<nullptr_t, _Dp, _Alloc> _CntrlBlk;  typedef typename _Alloc::template rebind<_CntrlBlk>::other _A2;  typedef __allocator_destructor<_A2> _D2; @@ -2922,7 +2918,7 @@  __d(__p);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    template<class _Tp> @@ -2982,11 +2978,11 @@  __r.__cntrl_ = 0;  }   -#endif +#endif // _LIBCPP_MOVE    template<class _Tp>  template<class _Yp> -#ifdef _LIBCPP_MOVE  +#ifdef _LIBCPP_MOVE  shared_ptr<_Tp>::shared_ptr(auto_ptr<_Yp>&& __r)  #else  shared_ptr<_Tp>::shared_ptr(auto_ptr<_Yp> __r) @@ -3001,7 +2997,7 @@    template<class _Tp>  template <class _Yp, class _Dp> -#ifdef _LIBCPP_MOVE  +#ifdef _LIBCPP_MOVE  shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp>&& __r,  #else  shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp> __r, @@ -3017,7 +3013,7 @@    template<class _Tp>  template <class _Yp, class _Dp> -#ifdef _LIBCPP_MOVE  +#ifdef _LIBCPP_MOVE  shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp>&& __r,  #else  shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp> __r, @@ -3244,7 +3240,7 @@  return *this;  }   -#ifdef _LIBCPP_MOVE  +#ifdef _LIBCPP_MOVE    template<class _Tp>  inline _LIBCPP_INLINE_VISIBILITY @@ -3285,13 +3281,13 @@  return *this;  }   -#else +#else // _LIBCPP_MOVE    template<class _Tp>  template<class _Yp>  inline _LIBCPP_INLINE_VISIBILITY  shared_ptr<_Tp>& -shared_ptr<_Tp>::operator=(auto_ptr<_Yp>& __r) +shared_ptr<_Tp>::operator=(auto_ptr<_Yp> __r)  {  shared_ptr(__r).swap(*this);  return *this; @@ -3307,7 +3303,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template<class _Tp>  inline _LIBCPP_INLINE_VISIBILITY @@ -3355,7 +3351,7 @@    #ifndef _LIBCPP_HAS_NO_VARIADICS   -template<class _Tp, class ..._Args>  +template<class _Tp, class ..._Args>  inline _LIBCPP_INLINE_VISIBILITY  shared_ptr<_Tp>  make_shared(_Args&& ...__args) @@ -3363,7 +3359,7 @@  return shared_ptr<_Tp>::make_shared(_STD::forward<_Args>(__args)...);  }   -template<class _Tp, class _Alloc, class ..._Args>  +template<class _Tp, class _Alloc, class ..._Args>  inline _LIBCPP_INLINE_VISIBILITY  shared_ptr<_Tp>  allocate_shared(const _Alloc& __a, _Args&& ...__args) @@ -3397,7 +3393,7 @@  return shared_ptr<_Tp>::make_shared(__a0, __a1);  }   -template<class _Tp, class _A0, class _A1, class _A2>  +template<class _Tp, class _A0, class _A1, class _A2>  inline _LIBCPP_INLINE_VISIBILITY  shared_ptr<_Tp>  make_shared(_A0& __a0, _A1& __a1, _A2& __a2) @@ -3505,38 +3501,38 @@  return __p.template __get_deleter<_Dp>();  }   -#endif +#endif // _LIBCPP_NO_RTTI    template<class _Tp>  class weak_ptr  { -public:  - typedef _Tp element_type;  +public: + typedef _Tp element_type;  private:  element_type* __ptr_;  __shared_weak_count* __cntrl_;   -public:  - weak_ptr();  +public: + weak_ptr();  template<class _Yp> weak_ptr(shared_ptr<_Yp> const& __r,  typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat()); - weak_ptr(weak_ptr const& __r);  + weak_ptr(weak_ptr const& __r);  template<class _Yp> weak_ptr(weak_ptr<_Yp> const& __r, - typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat());  -  - ~weak_ptr();  -  - weak_ptr& operator=(weak_ptr const& __r);  - template<class _Yp> weak_ptr& operator=(weak_ptr<_Yp> const& __r);  - template<class _Yp> weak_ptr& operator=(shared_ptr<_Yp> const& __r);  -  - void swap(weak_ptr& __r);  - void reset();  -  + typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat()); + + ~weak_ptr(); + + weak_ptr& operator=(weak_ptr const& __r); + template<class _Yp> weak_ptr& operator=(weak_ptr<_Yp> const& __r); + template<class _Yp> weak_ptr& operator=(shared_ptr<_Yp> const& __r); + + void swap(weak_ptr& __r); + void reset(); +  long use_count() const {return __cntrl_ ? __cntrl_->use_count() : 0;}  bool expired() const {return __cntrl_ == 0 || __cntrl_->use_count() == 0;} - shared_ptr<_Tp> lock() const;  - template<class _Up> bool owner_before(const shared_ptr<_Up>& __r) const  + shared_ptr<_Tp> lock() const; + template<class _Up> bool owner_before(const shared_ptr<_Up>& __r) const  {return __cntrl_ < __r.__cntrl_;}  template<class _Up> bool owner_before(const weak_ptr<_Up>& __r) const  {return __cntrl_ < __r.__cntrl_;} @@ -3604,7 +3600,7 @@  }    template<class _Tp> -template<class _Yp>  +template<class _Yp>  inline _LIBCPP_INLINE_VISIBILITY  weak_ptr<_Tp>&  weak_ptr<_Tp>::operator=(weak_ptr<_Yp> const& __r) @@ -3614,7 +3610,7 @@  }    template<class _Tp> -template<class _Yp>  +template<class _Yp>  inline _LIBCPP_INLINE_VISIBILITY  weak_ptr<_Tp>&  weak_ptr<_Tp>::operator=(shared_ptr<_Yp> const& __r) @@ -3674,26 +3670,26 @@  return __r;  }   -template <class _Tp> struct owner_less;  +template <class _Tp> struct owner_less;    template <class _Tp> -struct owner_less<shared_ptr<_Tp> >  +struct owner_less<shared_ptr<_Tp> >  : binary_function<shared_ptr<_Tp>, shared_ptr<_Tp>, bool> -{  - typedef bool result_type;  +{ + typedef bool result_type;  bool operator()(shared_ptr<_Tp> const& __x, shared_ptr<_Tp> const& __y) const  {return __x.owner_before(__y);}  bool operator()(shared_ptr<_Tp> const& __x, weak_ptr<_Tp> const& __y) const  {return __x.owner_before(__y);}  bool operator()( weak_ptr<_Tp> const& __x, shared_ptr<_Tp> const& __y) const  {return __x.owner_before(__y);} -};  +};    template <class _Tp> -struct owner_less<weak_ptr<_Tp> >  +struct owner_less<weak_ptr<_Tp> >  : binary_function<weak_ptr<_Tp>, weak_ptr<_Tp>, bool>  { - typedef bool result_type;  + typedef bool result_type;  bool operator()( weak_ptr<_Tp> const& __x, weak_ptr<_Tp> const& __y) const  {return __x.owner_before(__y);}  bool operator()(shared_ptr<_Tp> const& __x, weak_ptr<_Tp> const& __y) const @@ -3706,12 +3702,12 @@  class enable_shared_from_this  {  mutable weak_ptr<_Tp> __weak_this_; -protected:  +protected:  enable_shared_from_this() {}  enable_shared_from_this(enable_shared_from_this const&) {}  enable_shared_from_this& operator=(enable_shared_from_this const&) {return *this;}  ~enable_shared_from_this() {} -public:  +public:  shared_ptr<_Tp> shared_from_this() {return shared_ptr<_Tp>(__weak_this_);}  shared_ptr<_Tp const> shared_from_this() const {return shared_ptr<const _Tp>(__weak_this_);}   @@ -3729,7 +3725,7 @@  }  };   -//enum class  +//enum class  struct pointer_safety  {  enum _ @@ -3753,7 +3749,7 @@    template <class _Tp>  inline _LIBCPP_INLINE_VISIBILITY -_Tp*  +_Tp*  undeclare_reachable(_Tp* __p)  {  return static_cast<_Tp*>(__undeclare_reachable(__p)); 
diff --git a/include/mutex b/include/mutex index 71a21e3..ac8ca2b 100644 --- a/include/mutex +++ b/include/mutex 
@@ -330,7 +330,7 @@  return __r;  }   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    template <class _L0, class _L1>  void @@ -413,7 +413,7 @@  __lock_first(0, __l0, __l1, __l2...);  }   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    struct once_flag;   @@ -422,12 +422,12 @@  template<class _Callable, class... _Args>  void call_once(once_flag&, _Callable&&, _Args&&...);   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template<class _Callable>  void call_once(once_flag&, _Callable);   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    struct once_flag  { @@ -444,11 +444,11 @@  template<class _Callable, class... _Args>  friend  void call_once(once_flag&, _Callable&&, _Args&&...); -#else +#else // _LIBCPP_HAS_NO_VARIADICS  template<class _Callable>  friend  void call_once(once_flag&, _Callable); -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS  };    template <class _F> @@ -495,7 +495,7 @@  }  }   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template<class _Callable>  inline _LIBCPP_INLINE_VISIBILITY @@ -509,7 +509,7 @@  }  }   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    _LIBCPP_END_NAMESPACE_STD   
diff --git a/include/ostream b/include/ostream index 577167f..90f3403 100644 --- a/include/ostream +++ b/include/ostream 
@@ -242,7 +242,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__os_.rdbuf()->pubsync() == -1)  __os_.setstate(ios_base::badbit);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -250,7 +250,7 @@  catch (...)  {  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -279,7 +279,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits>  basic_ostream<_CharT, _Traits>::~basic_ostream() @@ -328,7 +328,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -337,7 +337,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef istreambuf_iterator<_CharT, _Traits> _I;  typedef ostreambuf_iterator<_CharT, _Traits> _O;  _I __i(__sb); @@ -358,7 +358,7 @@  {  this->__set_failbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  else  this->setstate(ios_base::badbit); @@ -369,7 +369,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -380,7 +380,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -395,7 +395,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -406,7 +406,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -425,7 +425,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -436,7 +436,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -451,7 +451,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -462,7 +462,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -481,7 +481,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -492,7 +492,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -507,7 +507,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -518,7 +518,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -533,7 +533,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -544,7 +544,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -559,7 +559,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -570,7 +570,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -585,7 +585,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -596,7 +596,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -611,7 +611,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -622,7 +622,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -637,7 +637,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -648,7 +648,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -663,7 +663,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -674,7 +674,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -689,7 +689,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -700,7 +700,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -715,7 +715,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -726,7 +726,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<_CharT, _Traits>::sentry __s(__os);  if (__s)  { @@ -747,7 +747,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -758,7 +758,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<_CharT, _Traits>::sentry __s(__os);  if (__s)  { @@ -780,7 +780,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -791,7 +791,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<char, _Traits>::sentry __s(__os);  if (__s)  { @@ -812,7 +812,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -823,7 +823,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<char, _Traits>::sentry __s(__os);  if (__s)  { @@ -844,7 +844,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -855,7 +855,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<char, _Traits>::sentry __s(__os);  if (__s)  { @@ -876,7 +876,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -887,7 +887,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<_CharT, _Traits>::sentry __s(__os);  if (__s)  { @@ -909,7 +909,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -920,7 +920,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<_CharT, _Traits>::sentry __s(__os);  if (__s)  { @@ -955,7 +955,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -966,7 +966,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<char, _Traits>::sentry __s(__os);  if (__s)  { @@ -988,7 +988,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -999,7 +999,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<char, _Traits>::sentry __s(__os);  if (__s)  { @@ -1021,7 +1021,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -1032,7 +1032,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<char, _Traits>::sentry __s(__os);  if (__s)  { @@ -1054,7 +1054,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   @@ -1065,7 +1065,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __s(*this);  if (__s)  { @@ -1081,7 +1081,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1092,7 +1092,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  sentry __sen(*this);  if (__sen && __n)  { @@ -1114,7 +1114,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1125,7 +1125,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (this->rdbuf())  {  sentry __s(*this); @@ -1141,7 +1141,7 @@  {  this->__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return *this;  }   @@ -1222,7 +1222,7 @@  return __os;  }   -#endif +#endif // _LIBCPP_MOVE    template<class _CharT, class _Traits, class _Allocator>  basic_ostream<_CharT, _Traits>& @@ -1232,7 +1232,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typename basic_ostream<_CharT, _Traits>::sentry __s(__os);  if (__s)  { @@ -1254,7 +1254,7 @@  {  __os.__set_badbit_and_consider_rethrow();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __os;  }   
diff --git a/include/queue b/include/queue index 2d5f04d..7c328ea 100644 --- a/include/queue +++ b/include/queue 
@@ -185,7 +185,7 @@  #ifdef _LIBCPP_MOVE  explicit queue(container_type&& __c) : c(_STD::move(__c)) {}  queue(queue&& __q) : c(_STD::move(__q.c)) {} -#endif +#endif // _LIBCPP_MOVE  template <class _Alloc>  explicit queue(const _Alloc& __a,  typename enable_if<uses_allocator<container_type, @@ -218,7 +218,7 @@  c = _STD::move(__q.c);  return *this;  } -#endif +#endif // _LIBCPP_MOVE    bool empty() const {return c.empty();}  size_type size() const {return c.size();} @@ -234,7 +234,7 @@  template <class... _Args>  void emplace(_Args&&... __args)  {c.emplace_back(_STD::forward<_Args>(__args)...);} -#endif +#endif // _LIBCPP_MOVE  void pop() {c.pop_front();}    void swap(queue& __q) @@ -247,7 +247,7 @@  friend  bool  operator==(const queue<_T1, _C1>& __x,const queue<_T1, _C1>& __y); -  +  template <class _T1, class _C1>  friend  bool @@ -351,7 +351,7 @@  const value_compare& __comp, container_type&& __c);  priority_queue(priority_queue&& __q);  priority_queue& operator=(priority_queue&& __q); -#endif +#endif // _LIBCPP_MOVE  template <class _Alloc>  explicit priority_queue(const _Alloc& __a,  typename enable_if<uses_allocator<container_type, @@ -379,7 +379,7 @@  priority_queue(priority_queue&& __q, const _Alloc& __a,  typename enable_if<uses_allocator<container_type,  _Alloc>::value>::type* = 0); -#endif +#endif // _LIBCPP_MOVE    bool empty() const {return c.empty();}  size_type size() const {return c.size();} @@ -389,7 +389,7 @@  #ifdef _LIBCPP_MOVE  void push(value_type&& __v);  template <class... _Args> void emplace(_Args&&... __args); -#endif +#endif // _LIBCPP_MOVE  void pop();    void swap(priority_queue& __q); @@ -417,7 +417,7 @@  _STD::make_heap(c.begin(), c.end(), comp);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Container, class _Compare>  template <class _InputIter> @@ -475,7 +475,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Container, class _Compare>  template <class _Alloc> @@ -542,7 +542,6 @@  _STD::make_heap(c.begin(), c.end(), comp);  }   -  template <class _Tp, class _Container, class _Compare>  template <class _Alloc>  inline @@ -556,7 +555,7 @@  _STD::make_heap(c.begin(), c.end(), comp);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Container, class _Compare>  inline @@ -588,7 +587,7 @@  _STD::push_heap(c.begin(), c.end(), comp);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Container, class _Compare>  inline 
diff --git a/include/random b/include/random index 86663af..e925f6d 100644 --- a/include/random +++ b/include/random 
@@ -485,7 +485,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const uniform_int_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -544,7 +544,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const uniform_real_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -599,7 +599,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const bernoulli_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -657,7 +657,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const binomial_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -713,7 +713,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const geometric_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -771,7 +771,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const negative_binomial_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -827,7 +827,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const poisson_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -883,7 +883,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const exponential_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -941,7 +941,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const gamma_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -999,7 +999,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const weibull_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1057,7 +1057,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const extreme_value_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1115,7 +1115,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const normal_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1173,7 +1173,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const lognormal_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1229,7 +1229,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const chi_squared_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1287,7 +1287,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const cauchy_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1345,7 +1345,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const fisher_f_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1401,7 +1401,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const student_t_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1468,7 +1468,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const discrete_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1543,7 +1543,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const piecewise_constant_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1585,7 +1585,7 @@  piecewise_linear_distribution(InputIteratorB firstB,  InputIteratorB lastB,  InputIteratorW firstW); -  +  template<class UnaryOperation>  piecewise_linear_distribution(initializer_list<result_type> bl,  UnaryOperation fw); @@ -1621,7 +1621,7 @@  basic_ostream<charT, traits>&  operator<<(basic_ostream<charT, traits>& os,  const piecewise_linear_distribution& x); -  +  template <class charT, class traits>  friend  basic_istream<charT, traits>& @@ -1882,7 +1882,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const linear_congruential_engine<_U, _A, _C, _N>&); -  +  template <class _CharT, class _Traits,  class _U, _U _A, _U _C, _U _N>  friend @@ -2100,7 +2100,7 @@  _B, _T, _C, _L, _F>& __x,  const mersenne_twister_engine<_UI, _W, _N, _M, _R, _A, _U, _D, _S,  _B, _T, _C, _L, _F>& __y); -  +  template <class _UI, size_t _W, size_t _N, size_t _M, size_t _R,  _UI _A, size_t _U, _UI _D, size_t _S,  _UI _B, size_t _T, _UI _C, size_t _L, _UI _F> @@ -2457,21 +2457,21 @@  operator==(  const subtract_with_carry_engine<_UI, _W, _S, _R>& __x,  const subtract_with_carry_engine<_UI, _W, _S, _R>& __y); -  +  template<class _UI, size_t _W, size_t _S, size_t _R>  friend  bool  operator!=(  const subtract_with_carry_engine<_UI, _W, _S, _R>& __x,  const subtract_with_carry_engine<_UI, _W, _S, _R>& __y); -  +  template <class _CharT, class _Traits,  class _UI, size_t _W, size_t _S, size_t _R>  friend  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const subtract_with_carry_engine<_UI, _W, _S, _R>& __x); -  +  template <class _CharT, class _Traits,  class _UI, size_t _W, size_t _S, size_t _R>  friend @@ -2688,7 +2688,7 @@  #ifdef _LIBCPP_MOVE  explicit discard_block_engine(_Engine&& __e)  : __e_(_STD::move(__e)), __n_(0) {} -#endif +#endif // _LIBCPP_MOVE  explicit discard_block_engine(result_type __sd) : __e_(__sd), __n_(0) {}  template<class _Sseq> explicit discard_block_engine(_Sseq& __q,  typename enable_if<!is_convertible<_Sseq, result_type>::value && @@ -2717,21 +2717,21 @@  operator==(  const discard_block_engine<_Eng, _P, _R>& __x,  const discard_block_engine<_Eng, _P, _R>& __y); -  +  template<class _Eng, size_t _P, size_t _R>  friend  bool  operator!=(  const discard_block_engine<_Eng, _P, _R>& __x,  const discard_block_engine<_Eng, _P, _R>& __y); -  +  template <class _CharT, class _Traits,  class _Eng, size_t _P, size_t _R>  friend  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const discard_block_engine<_Eng, _P, _R>& __x); -  +  template <class _CharT, class _Traits,  class _Eng, size_t _P, size_t _R>  friend @@ -2875,7 +2875,7 @@  #ifdef _LIBCPP_MOVE  explicit independent_bits_engine(_Engine&& __e)  : __e_(_STD::move(__e)) {} -#endif +#endif // _LIBCPP_MOVE  explicit independent_bits_engine(result_type __sd) : __e_(__sd) {}  template<class _Sseq> explicit independent_bits_engine(_Sseq& __q,  typename enable_if<!is_convertible<_Sseq, result_type>::value && @@ -2904,21 +2904,21 @@  operator==(  const independent_bits_engine<_Eng, _W, _UI>& __x,  const independent_bits_engine<_Eng, _W, _UI>& __y); -  +  template<class _Eng, size_t _W, class _UI>  friend  bool  operator!=(  const independent_bits_engine<_Eng, _W, _UI>& __x,  const independent_bits_engine<_Eng, _W, _UI>& __y); -  +  template <class _CharT, class _Traits,  class _Eng, size_t _W, class _UI>  friend  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const independent_bits_engine<_Eng, _W, _UI>& __x); -  +  template <class _CharT, class _Traits,  class _Eng, size_t _W, class _UI>  friend @@ -3067,7 +3067,7 @@  public:  // engine characteristics  static const/*expr*/ size_t table_size = __k; -  +  static const result_type _Min = _Engine::_Min;  static const result_type _Max = _Engine::_Max;  static_assert(_Min < _Max, "shuffle_order_engine invalid parameters"); @@ -3083,7 +3083,7 @@  #ifdef _LIBCPP_MOVE  explicit shuffle_order_engine(_Engine&& __e)  : __e_(_STD::move(__e)) {__init();} -#endif +#endif // _LIBCPP_MOVE  explicit shuffle_order_engine(result_type __sd) : __e_(__sd) {__init();}  template<class _Sseq> explicit shuffle_order_engine(_Sseq& __q,  typename enable_if<!is_convertible<_Sseq, result_type>::value && @@ -3113,21 +3113,21 @@  operator==(  const shuffle_order_engine<_Eng, _K>& __x,  const shuffle_order_engine<_Eng, _K>& __y); -  +  template<class _Eng, size_t _K>  friend  bool  operator!=(  const shuffle_order_engine<_Eng, _K>& __x,  const shuffle_order_engine<_Eng, _K>& __y); -  +  template <class _CharT, class _Traits,  class _Eng, size_t _K>  friend  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const shuffle_order_engine<_Eng, _K>& __x); -  +  template <class _CharT, class _Traits,  class _Eng, size_t _K>  friend @@ -3297,7 +3297,7 @@  seed_seq() {}  template<class _Tp>  seed_seq(initializer_list<_Tp> __il) {init(__il.begin(), __il.end());} -  +  template<class _InputIterator>  seed_seq(_InputIterator __first, _InputIterator __last)  {init(__first, __last);} @@ -3955,7 +3955,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const normal_distribution<_RT>& __x); -  +  template <class _CharT, class _Traits, class _RT>  friend  basic_istream<_CharT, _Traits>& @@ -4068,7 +4068,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const lognormal_distribution<_RT>& __x); -  +  template <class _CharT, class _Traits, class _RT>  friend  basic_istream<_CharT, _Traits>& @@ -4115,7 +4115,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const lognormal_distribution<_RT>& __x); -  +  template <class _CharT, class _Traits, class _RT>  friend  basic_istream<_CharT, _Traits>& @@ -4413,7 +4413,6 @@  result_type min() const {return 0;}  result_type max() const {return numeric_limits<result_type>::infinity();}   -  friend bool operator==(const weibull_distribution& __x,  const weibull_distribution& __y)  {return __x.__p_ == __y.__p_;} @@ -4607,7 +4606,7 @@  void param(const param_type& __p) {__p_ = __p;}    result_type min() const {return 0;} - result_type max() const {return numeric_limits<result_type>::infinity();}  + result_type max() const {return numeric_limits<result_type>::infinity();}    friend bool operator==(const gamma_distribution& __x,  const gamma_distribution& __y) @@ -4959,8 +4958,7 @@  void param(const param_type& __p) {__p_ = __p;}    result_type min() const {return 0;} - result_type max() const {return numeric_limits<result_type>::infinity();}  - + result_type max() const {return numeric_limits<result_type>::infinity();}    friend bool operator==(const chi_squared_distribution& __x,  const chi_squared_distribution& __y) @@ -5051,7 +5049,7 @@  void param(const param_type& __p) {__p_ = __p;}    result_type min() const {return -numeric_limits<result_type>::infinity();} - result_type max() const {return numeric_limits<result_type>::infinity();}  + result_type max() const {return numeric_limits<result_type>::infinity();}    friend bool operator==(const cauchy_distribution& __x,  const cauchy_distribution& __y) @@ -5156,7 +5154,7 @@  void param(const param_type& __p) {__p_ = __p;}    result_type min() const {return 0;} - result_type max() const {return numeric_limits<result_type>::infinity();}  + result_type max() const {return numeric_limits<result_type>::infinity();}    friend bool operator==(const fisher_f_distribution& __x,  const fisher_f_distribution& __y) @@ -5347,7 +5345,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const discrete_distribution<_IT>& __x); -  +  template <class _CharT, class _Traits, class _IT>  friend  basic_istream<_CharT, _Traits>& @@ -5400,7 +5398,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const discrete_distribution<_IT>& __x); -  +  template <class _CharT, class _Traits, class _IT>  friend  basic_istream<_CharT, _Traits>& @@ -5558,7 +5556,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const piecewise_constant_distribution<_RT>& __x); -  +  template <class _CharT, class _Traits, class _RT>  friend  basic_istream<_CharT, _Traits>& @@ -5620,7 +5618,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const piecewise_constant_distribution<_RT>& __x); -  +  template <class _CharT, class _Traits, class _RT>  friend  basic_istream<_CharT, _Traits>& @@ -5635,7 +5633,7 @@  // __densities_ contains non-normalized areas  __area_type __total_area = _STD::accumulate(__densities_.begin(),  __densities_.end(), - __area_type());  + __area_type());  for (size_t __i = 0; __i < __densities_.size(); ++__i)  __densities_[__i] /= __total_area;  // __densities_ contains normalized areas @@ -5839,7 +5837,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const piecewise_linear_distribution<_RT>& __x); -  +  template <class _CharT, class _Traits, class _RT>  friend  basic_istream<_CharT, _Traits>& @@ -5858,7 +5856,7 @@  _InputIteratorB __lB,  _InputIteratorW __fW)  : __p_(__fB, __lB, __fW) {} -  +  template<class _UnaryOperation>  piecewise_linear_distribution(initializer_list<result_type> __bl,  _UnaryOperation __fw) @@ -5901,7 +5899,7 @@  basic_ostream<_CharT, _Traits>&  operator<<(basic_ostream<_CharT, _Traits>& __os,  const piecewise_linear_distribution<_RT>& __x); -  +  template <class _CharT, class _Traits, class _RT>  friend  basic_istream<_CharT, _Traits>& @@ -6025,7 +6023,7 @@  return static_cast<result_type>(__u / __dk + __bk);  const result_type __bk1 = __p.__b_[__k+1];  const result_type __deltab = __bk1 - __bk; - return static_cast<result_type>((__bk * __dk1 - __bk1 * __dk +  + return static_cast<result_type>((__bk * __dk1 - __bk1 * __dk +  _STD::sqrt(__deltab * (__deltab * __dk * __dk + 2 * __deltad * __u))) /  __deltad);  } 
diff --git a/include/ratio b/include/ratio index ca5be9c..e32901e 100644 --- a/include/ratio +++ b/include/ratio 
@@ -335,11 +335,11 @@    template <class _R1, class _R2>  struct ratio_equal - : public integral_constant<bool, _R1::num == _R2::num && _R1::den == _R2::den> {};  + : public integral_constant<bool, _R1::num == _R2::num && _R1::den == _R2::den> {};    template <class _R1, class _R2>  struct ratio_not_equal - : public integral_constant<bool, !ratio_equal<_R1, _R2>::value> {};  + : public integral_constant<bool, !ratio_equal<_R1, _R2>::value> {};    // ratio_less   
diff --git a/include/regex b/include/regex index 3c33cc8..25aab82 100644 --- a/include/regex +++ b/include/regex 
@@ -1273,7 +1273,6 @@  return os;  }   -  // __node    template <class _CharT> @@ -2267,7 +2266,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__b.size() != 1 || __e.size() != 1)  throw regex_error(regex_constants::error_collate); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__icase_)  {  __b[0] = __traits_.translate_nocase(__b[0]); @@ -2850,7 +2849,7 @@  friend  bool  regex_search(const basic_string<_C, _ST, _SA>& __s, - match_results<typename basic_string<_C, _ST, _SA>::const_iterator, _A>&,  + match_results<typename basic_string<_C, _ST, _SA>::const_iterator, _A>&,  const basic_regex<_C, _T>& __e,  regex_constants::match_flag_type __flags);   @@ -2965,7 +2964,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  default:  throw regex_error(regex_constants::__re_err_grammar); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  return __first;  } @@ -2999,7 +2998,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first != __last)  throw regex_error(regex_constants::__re_err_empty); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  return __first;  } @@ -3015,7 +3014,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::__re_err_empty); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __first = __temp;  while (__first != __last && *__first == '|')  { @@ -3024,7 +3023,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::__re_err_empty); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __push_alternation(__sa, __sb);  __first = __temp;  } @@ -3041,7 +3040,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::__re_err_empty); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  do  {  __first = __temp; @@ -3079,7 +3078,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __last || *__temp != ')')  throw regex_error(regex_constants::error_paren); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __push_end_marked_subexpression(__temp_count);  --__open_count_;  ++__temp; @@ -3147,7 +3146,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::error_paren); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __push_end_marked_subexpression(__temp_count);  __first = __temp;  } @@ -3459,19 +3458,19 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::error_badbrace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __first = __temp;  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_brace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (*__first != ',')  {  __temp = __parse_Back_close_brace(__first, __last);  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::error_brace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __push_loop(__min, __min, __s, __mexp_begin, __mexp_end,  true);  __first = __temp; @@ -3485,7 +3484,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::error_brace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__max == -1)  __push_greedy_inf_repeat(__min, __s, __mexp_begin, __mexp_end);  else @@ -3493,7 +3492,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__max < __min)  throw regex_error(regex_constants::error_badbrace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __push_loop(__min, __max, __s, __mexp_begin, __mexp_end,  true);  } @@ -3556,12 +3555,12 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::error_badbrace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __first = __temp;  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_brace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  switch (*__first)  {  case '}': @@ -3579,7 +3578,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_badbrace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (*__first == '}')  {  ++__first; @@ -3598,17 +3597,17 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __first)  throw regex_error(regex_constants::error_brace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __first = __temp;  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last || *__first != '}')  throw regex_error(regex_constants::error_brace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  ++__first;  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__max < __min)  throw regex_error(regex_constants::error_badbrace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (__grammar == ECMAScript && __first != __last && *__first == '?')  {  ++__first; @@ -3621,7 +3620,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  default:  throw regex_error(regex_constants::error_badbrace); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }  break; @@ -3642,7 +3641,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  bool __negate = false;  if (*__first == '^')  { @@ -3654,7 +3653,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if ((__flags_ & 0x1F0) != ECMAScript && *__first == ']')  {  __ml->__add_char(']'); @@ -3664,7 +3663,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  if (*__first == '-')  {  __ml->__add_char('-'); @@ -3673,7 +3672,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last || *__first != ']')  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  ++__first;  }  return __first; @@ -3796,7 +3795,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  switch (*__first)  {  case 0: @@ -3840,7 +3839,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  switch (*__first)  {  case '\\': @@ -3911,7 +3910,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  else  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __first;  }   @@ -3930,7 +3929,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __last)  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  // [__first, __temp) contains all text in [= ... =]  typedef typename _Traits::string_type string_type;  string_type __collate_name = @@ -3938,7 +3937,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__collate_name.empty())  throw regex_error(regex_constants::error_collate); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  string_type __equiv_name =  __traits_.transform_primary(__collate_name.begin(),  __collate_name.end()); @@ -3957,7 +3956,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  default:  throw regex_error(regex_constants::error_collate); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }  __first = next(__temp, 2); @@ -3979,7 +3978,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __last)  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  // [__first, __temp) contains all text in [: ... :]  typedef typename _Traits::char_class_type char_class_type;  char_class_type __class_type = @@ -3987,7 +3986,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__class_type == 0)  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __ml->__add_class(__class_type);  __first = next(__temp, 2);  return __first; @@ -4008,7 +4007,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __last)  throw regex_error(regex_constants::error_brack); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  // [__first, __temp) contains all text in [. ... .]  typedef typename _Traits::string_type string_type;  __col_sym = __traits_.lookup_collatename(__first, __temp); @@ -4020,7 +4019,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  default:  throw regex_error(regex_constants::error_collate); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  __first = next(__temp, 2);  return __first; @@ -4161,7 +4160,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __last || *__temp != ')')  throw regex_error(regex_constants::error_paren); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __first = ++__temp;  }  break; @@ -4175,7 +4174,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__temp == __last || *__temp != ')')  throw regex_error(regex_constants::error_paren); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __first = ++__temp;  }  break; @@ -4215,7 +4214,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_paren); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  _ForwardIterator __temp = _STD::next(__first);  if (__temp != __last && *__first == '?' && *__temp == ':')  { @@ -4224,7 +4223,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last || *__first != ')')  throw regex_error(regex_constants::error_paren); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  --__open_count_;  ++__first;  } @@ -4237,7 +4236,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last || *__first != ')')  throw regex_error(regex_constants::error_paren); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __push_end_marked_subexpression(__temp_count);  --__open_count_;  ++__first; @@ -4301,7 +4300,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__v > mark_count())  throw regex_error(regex_constants::error_backref); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __push_back_ref(__v);  }  } @@ -4423,23 +4422,23 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __hd = __traits_.value(*__first, 16);  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__hd == -1)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __sum = 16 * __sum + __hd;  ++__first;  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __hd = __traits_.value(*__first, 16);  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__hd == -1)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __sum = 16 * __sum + __hd;  // drop through  case 'x': @@ -4447,23 +4446,23 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __hd = __traits_.value(*__first, 16);  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__hd == -1)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __sum = 16 * __sum + __hd;  ++__first;  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__first == __last)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __hd = __traits_.value(*__first, 16);  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__hd == -1)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __sum = 16 * __sum + __hd;  if (__str)  *__str = _CharT(__sum); @@ -4483,7 +4482,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  else if (__str)  throw regex_error(regex_constants::error_escape); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  break;  }  } @@ -5189,7 +5188,7 @@  #ifdef _LIBCPP_MOVE  // match_results(match_results&& __m) = default;  // match_results& operator=(match_results&& __m) = default; -#endif +#endif // _LIBCPP_MOVE  // ~match_results() = default;    // size: 
diff --git a/include/scoped_allocator b/include/scoped_allocator index 972c2b0..d94c785 100644 --- a/include/scoped_allocator +++ b/include/scoped_allocator 
@@ -21,7 +21,7 @@  class scoped_allocator_adaptor : public OuterAlloc  {  typedef allocator_traits<OuterAlloc> OuterTraits; // exposition only - scoped_allocator_adaptor<InnerAllocs...> inner;	// exposition only + scoped_allocator_adaptor<InnerAllocs...> inner; // exposition only  public:    typedef OuterAlloc outer_allocator_type; @@ -180,7 +180,7 @@  inner_allocator_type __inner_;    protected: -  +  __scoped_allocator_storage() {}    template <class _OuterA2, @@ -526,7 +526,7 @@  return !(__a == __b);  }   -#endif +#endif // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)    _LIBCPP_END_NAMESPACE_STD   
diff --git a/include/set b/include/set index cf88ed9..2ee4044 100644 --- a/include/set +++ b/include/set 
@@ -157,7 +157,6 @@  void  swap(set<Key, Compare, Allocator>& x, set<Key, Compare, Allocator>& y);   -  template <class Key, class Compare = less<Key>,  class Allocator = allocator<Key>>  class multiset @@ -369,7 +368,7 @@  #ifdef _LIBCPP_MOVE  set(set&& __s)  : __tree_(_STD::move(__s.__tree_)) {} -#endif +#endif // _LIBCPP_MOVE    explicit set(const allocator_type& __a)  : __tree_(__a) {} @@ -409,7 +408,7 @@  __tree_ = _STD::move(__s.__tree_);  return *this;  } -#endif +#endif // _LIBCPP_MOVE    iterator begin() {return __tree_.begin();}  const_iterator begin() const {return __tree_.begin();} @@ -438,19 +437,19 @@  template <class... _Args>  iterator emplace_hint(const_iterator __p, _Args&&... __args)  {return __tree_.__emplace_hint_unique(__p, _STD::forward<_Args>(__args)...);} -#endif +#endif // _LIBCPP_MOVE  pair<iterator,bool> insert(const value_type& __v)  {return __tree_.__insert_unique(__v);}  #ifdef _LIBCPP_MOVE  pair<iterator,bool> insert(value_type&& __v)  {return __tree_.__insert_unique(_STD::move(__v));} -#endif +#endif // _LIBCPP_MOVE  iterator insert(const_iterator __p, const value_type& __v)  {return __tree_.__insert_unique(__p, __v);}  #ifdef _LIBCPP_MOVE  iterator insert(const_iterator __p, value_type&& __v)  {return __tree_.__insert_unique(__p, _STD::move(__v));} -#endif +#endif // _LIBCPP_MOVE  template <class _InputIterator>  void insert(_InputIterator __f, _InputIterator __l)  { @@ -507,7 +506,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Compare, class _Allocator>  inline @@ -573,7 +572,6 @@  __x.swap(__y);  }   -  template <class _Key, class _Compare = less<_Key>,  class _Allocator = allocator<_Key> >  class multiset @@ -636,7 +634,7 @@  #ifdef _LIBCPP_MOVE  multiset(multiset&& __s)  : __tree_(_STD::move(__s.__tree_)) {} -#endif +#endif // _LIBCPP_MOVE  explicit multiset(const allocator_type& __a)  : __tree_(__a) {}  multiset(const multiset& __s, const allocator_type& __a) @@ -673,7 +671,7 @@  __tree_ = _STD::move(__s.__tree_);  return *this;  } -#endif +#endif // _LIBCPP_MOVE    iterator begin() {return __tree_.begin();}  const_iterator begin() const {return __tree_.begin();} @@ -702,19 +700,19 @@  template <class... _Args>  iterator emplace_hint(const_iterator __p, _Args&&... __args)  {return __tree_.__emplace_hint_multi(__p, _STD::forward<_Args>(__args)...);} -#endif +#endif // _LIBCPP_MOVE  iterator insert(const value_type& __v)  {return __tree_.__insert_multi(__v);}  #ifdef _LIBCPP_MOVE  iterator insert(value_type&& __v)  {return __tree_.__insert_multi(_STD::move(__v));} -#endif +#endif // _LIBCPP_MOVE  iterator insert(const_iterator __p, const value_type& __v)  {return __tree_.__insert_multi(__p, __v);}  #ifdef _LIBCPP_MOVE  iterator insert(const_iterator __p, value_type&& __v)  {return __tree_.__insert_multi(_STD::move(__v));} -#endif +#endif // _LIBCPP_MOVE  template <class _InputIterator>  void insert(_InputIterator __f, _InputIterator __l)  { @@ -770,7 +768,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Compare, class _Allocator>  inline @@ -835,7 +833,6 @@  __x.swap(__y);  }   -  _LIBCPP_END_NAMESPACE_STD    #endif // _LIBCPP_SET 
diff --git a/include/sstream b/include/sstream index e520222..07b6ad4 100644 --- a/include/sstream +++ b/include/sstream 
@@ -298,7 +298,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits, class _Allocator>  void @@ -434,7 +434,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  ptrdiff_t __nout = this->pptr() - this->pbase();  ptrdiff_t __hm = __hm_ - this->pbase();  __str_.push_back(char_type()); @@ -449,7 +449,7 @@  {  return traits_type::eof();  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  __hm_ = max(this->pptr() + 1, __hm_);  if (__mode_ & ios_base::in) @@ -551,7 +551,7 @@    // 27.8.2.2 Assign and swap:  basic_istringstream& operator=(basic_istringstream&& __rhs); -#endif +#endif // _LIBCPP_MOVE  void swap(basic_istringstream& __rhs);    // 27.8.2.3 Members: @@ -597,7 +597,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits, class _Allocator>  inline _LIBCPP_INLINE_VISIBILITY @@ -670,7 +670,7 @@    // 27.8.2.2 Assign and swap:  basic_ostringstream& operator=(basic_ostringstream&& __rhs); -#endif +#endif // _LIBCPP_MOVE  void swap(basic_ostringstream& __rhs);    // 27.8.2.3 Members: @@ -716,7 +716,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits, class _Allocator>  inline _LIBCPP_INLINE_VISIBILITY @@ -789,7 +789,7 @@    // 27.8.2.2 Assign and swap:  basic_stringstream& operator=(basic_stringstream&& __rhs); -#endif +#endif // _LIBCPP_MOVE  void swap(basic_stringstream& __rhs);    // 27.8.2.3 Members: @@ -835,7 +835,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _CharT, class _Traits, class _Allocator>  inline _LIBCPP_INLINE_VISIBILITY 
diff --git a/include/stack b/include/stack index 082f51b..f4be79b 100644 --- a/include/stack +++ b/include/stack 
@@ -111,7 +111,7 @@  explicit stack(container_type&& __c) : c(_STD::move(__c)) {}  stack(stack&& __s) : c(_STD::move(__s.c)) {}  stack& operator=(stack&& __s) {c = _STD::move(__s.c); return *this;} -#endif +#endif // _LIBCPP_MOVE  template <class _Alloc>  explicit stack(const _Alloc& __a,  typename enable_if<uses_allocator<container_type, @@ -138,7 +138,7 @@  typename enable_if<uses_allocator<container_type,  _Alloc>::value>::type* = 0)  : c(_STD::move(__s.c), __a) {} -#endif +#endif // _LIBCPP_MOVE    bool empty() const {return c.empty();}  size_type size() const {return c.size();} @@ -150,7 +150,7 @@  void push(value_type&& __v) {c.push_back(_STD::move(__v));}  template <class... _Args> void emplace(_Args&&... __args)  {c.emplace_back(_STD::forward<_Args>(__args)...);} -#endif +#endif // _LIBCPP_MOVE  void pop() {c.pop_back();}    void swap(stack& __s) @@ -163,7 +163,7 @@  friend  bool  operator==(const stack<T1, _C1>& __x, const stack<T1, _C1>& __y); -  +  template <class T1, class _C1>  friend  bool 
diff --git a/include/stdexcept b/include/stdexcept index a78e2e6..e3a1a2c 100644 --- a/include/stdexcept +++ b/include/stdexcept 
@@ -155,7 +155,6 @@  virtual ~underflow_error() throw();  };   -  } // std    #endif // _LIBCPP_STDEXCEPT 
diff --git a/include/streambuf b/include/streambuf index e15789b..2746d53 100644 --- a/include/streambuf +++ b/include/streambuf 
@@ -557,7 +557,6 @@  extern template class basic_ios<char>;  extern template class basic_ios<wchar_t>;   -  _LIBCPP_END_NAMESPACE_STD    #endif // _LIBCPP_STEAMBUF 
diff --git a/include/string b/include/string index 2ca5986..8d880a3 100644 --- a/include/string +++ b/include/string 
@@ -71,11 +71,11 @@  template <> struct char_traits<char>;  template <> struct char_traits<wchar_t>;   -template<class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >  +template<class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >  class basic_string  { -public:  -// types:  +public: +// types:  typedef traits traits_type;  typedef typename traits_type::char_type value_type;  typedef Allocator allocator_type; @@ -290,7 +290,7 @@  template<class charT, class traits, class Allocator>  bool operator==(const basic_string<charT,traits,Allocator>& lhs, const charT* rhs);   -template<class charT, class traits, class Allocator>  +template<class charT, class traits, class Allocator>  bool operator!=(const basic_string<charT,traits,Allocator>& lhs,  const basic_string<charT, traits, Allocator>& rhs);   @@ -353,7 +353,7 @@  operator<<(basic_ostream<charT, traits>& os, const basic_string<charT, traits, Allocator>& str);    template<class charT, class traits, class Allocator> -basic_istream<charT, traits>&  +basic_istream<charT, traits>&  getline(basic_istream<charT, traits>& is, basic_string<charT, traits, Allocator>& str,  charT delim);   @@ -876,7 +876,7 @@  return __r;  }   -#endif +#endif // _LIBCPP_HAS_NO_UNICODE_CHARS    // basic_string   @@ -932,7 +932,7 @@    extern template class __basic_string_common<true>;   -template<class _CharT, class _Traits, class _Allocator>  +template<class _CharT, class _Traits, class _Allocator>  class basic_string  : private __basic_string_common<true>  { @@ -956,10 +956,10 @@  #elif defined(_LIBCPP_RAW_ITERATORS)  typedef pointer iterator;  typedef const_pointer const_iterator; -#else +#else // defined(_LIBCPP_RAW_ITERATORS)  typedef __wrap_iter<pointer> iterator;  typedef __wrap_iter<const_pointer> const_iterator; -#endif +#endif // defined(_LIBCPP_RAW_ITERATORS)  typedef _STD::reverse_iterator<iterator> reverse_iterator;  typedef _STD::reverse_iterator<const_iterator> const_reverse_iterator;   @@ -974,10 +974,10 @@  #if _LIBCPP_BIG_ENDIAN  enum {__short_mask = 0x80};  enum {__long_mask = ~(size_type(~0) >> 1)}; -#else +#else // _LIBCPP_BIG_ENDIAN  enum {__short_mask = 0x01};  enum {__long_mask = 0x1}; -#endif +#endif // _LIBCPP_BIG_ENDIAN    enum {__mask = size_type(~0) >> 1};   @@ -1034,7 +1034,7 @@  #ifdef _LIBCPP_MOVE  basic_string(basic_string&& __str);  basic_string(basic_string&& __str, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE  basic_string(const_pointer __s);  basic_string(const_pointer __s, const allocator_type& __a);  basic_string(const_pointer __s, size_type __n); @@ -1307,7 +1307,7 @@  void __init(const_pointer __s, size_type __sz, size_type __reserve);  void __init(const_pointer __s, size_type __sz);  void __init(size_type __n, value_type __c); -  +  template <class _InputIterator>  typename enable_if  < @@ -1326,7 +1326,7 @@  __init(_ForwardIterator __first, _ForwardIterator __last);    void __grow_by(size_type __old_cap, size_type __delta_cap, size_type __old_sz, - size_type __n_copy, size_type __n_del, size_type __n_add = 0);  + size_type __n_copy, size_type __n_del, size_type __n_add = 0);  void __grow_by_and_replace(size_type __old_cap, size_type __delta_cap, size_type __old_sz,  size_type __n_copy, size_type __n_del,  size_type __n_add, const_pointer __p_new_stuff); @@ -1353,7 +1353,7 @@  #ifdef _LIBCPP_DEBUG  iterator::__remove_all(this);  const_iterator::__remove_all(this); -#endif +#endif // _LIBCPP_DEBUG  }    template <class _CharT, class _Traits, class _Allocator> @@ -1393,7 +1393,7 @@  __p = __p->__next;  }  } -#endif +#endif // _LIBCPP_DEBUG  }    template <class _CharT, class _Traits, class _Allocator> @@ -1586,7 +1586,6 @@  __init(__n, __c);  }   -  template <class _CharT, class _Traits, class _Allocator>  basic_string<_CharT, _Traits, _Allocator>::basic_string(const basic_string& __str, size_type __pos, size_type __n,  const allocator_type& __a) @@ -1612,7 +1611,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __first != __last; ++__first)  push_back(*__first);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -1623,7 +1622,7 @@  __alloc().deallocate(__get_long_pointer(), __get_long_cap());  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    template <class _CharT, class _Traits, class _Allocator> @@ -2545,7 +2544,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { - #endif + #endif // _LIBCPP_NO_EXCEPTIONS  __new_data = __alloc().allocate(__res_arg+1);  #ifndef _LIBCPP_NO_EXCEPTIONS  } @@ -2553,10 +2552,10 @@  {  return;  } - #else + #else // _LIBCPP_NO_EXCEPTIONS  if (__new_data == 0)  return; - #endif + #endif // _LIBCPP_NO_EXCEPTIONS  }  __now_long = true;  __was_long = __is_long(); @@ -2690,7 +2689,7 @@  #ifdef _LIBCPP_DEBUG  __invalidate_all_iterators();  __str.__invalidate_all_iterators(); -#endif +#endif // _LIBCPP_DEBUG  }    // find @@ -3180,7 +3179,7 @@    // operator!=   -template<class _CharT, class _Traits, class _Allocator>  +template<class _CharT, class _Traits, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  bool  operator!=(const basic_string<_CharT,_Traits,_Allocator>& __lhs, @@ -3505,7 +3504,7 @@  typedef basic_string<char16_t> u16string;  typedef basic_string<char32_t> u32string;   -#endif +#endif // _LIBCPP_HAS_NO_UNICODE_CHARS    int stoi (const string& __str, size_t* __idx = 0, int __base = 10);  long stol (const string& __str, size_t* __idx = 0, int __base = 10); 
diff --git a/include/strstream b/include/strstream index 9556857..54a3b6e 100644 --- a/include/strstream +++ b/include/strstream 
@@ -152,7 +152,7 @@  #ifdef _LIBCPP_MOVE  strstreambuf(strstreambuf&& __rhs);  strstreambuf& operator=(strstreambuf&& __rhs); -#endif +#endif // _LIBCPP_MOVE    virtual ~strstreambuf();   @@ -214,7 +214,7 @@  __sb_ = _STD::move(__rhs.__sb_);  return *this;  } -#endif +#endif // _LIBCPP_MOVE    virtual ~istrstream();   @@ -256,7 +256,7 @@  __sb_ = _STD::move(__rhs.__sb_);  return *this;  } -#endif +#endif // _LIBCPP_MOVE    virtual ~ostrstream();   @@ -307,7 +307,7 @@  __sb_ = _STD::move(__rhs.__sb_);  return *this;  } -#endif +#endif // _LIBCPP_MOVE    virtual ~strstream();   
diff --git a/include/system_error b/include/system_error index 8526f37..24b2322 100644 --- a/include/system_error +++ b/include/system_error 
@@ -240,7 +240,6 @@  // Some error codes are not present on all platforms, so we provide equivalents  // for them:   -  //enum class errc  struct errc  { 
diff --git a/include/thread b/include/thread index dad1ed1..fffd2df 100644 --- a/include/thread +++ b/include/thread 
@@ -181,10 +181,10 @@  #ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS  thread(const thread&) = delete;  thread& operator=(const thread&) = delete; -#else +#else // _LIBCPP_HAS_NO_DELETED_FUNCTIONS  thread(const thread&);  thread& operator=(const thread&); -#endif +#endif // _LIBCPP_HAS_NO_DELETED_FUNCTIONS  public:  typedef __thread_id id;  typedef pthread_t native_handle_type; @@ -198,7 +198,7 @@  >::type  >  explicit thread(_F&& __f, _Args&&... __args); -#else +#else // _LIBCPP_HAS_NO_VARIADICS  template <class _F> explicit thread(_F __f);  #endif  ~thread(); @@ -206,7 +206,7 @@  #ifdef _LIBCPP_MOVE  thread(thread&& __t) : __t_(__t.__t_) {__t.__t_ = 0;}  thread& operator=(thread&& __t); -#endif +#endif // _LIBCPP_MOVE    void swap(thread& __t) {_STD::swap(__t_, __t.__t_);}   @@ -245,7 +245,7 @@  __throw_system_error(__ec, "thread constructor failed");  }   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template <class _F>  thread::thread(_F __f) @@ -258,7 +258,7 @@  __throw_system_error(__ec, "thread constructor failed");  }   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    #ifdef _LIBCPP_MOVE   @@ -273,12 +273,11 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    inline  void swap(thread& __x, thread& __y) {__x.swap(__y);}   -  namespace this_thread  {   
diff --git a/include/tuple b/include/tuple index f7ad060..492b254 100644 --- a/include/tuple +++ b/include/tuple 
@@ -392,7 +392,7 @@  >  __tuple_impl(allocator_arg_t, const _Alloc& __a, _Tuple&& __t)  : __tuple_leaf<_Indx, _Tp>(__uses_alloc_ctor<_Tp, _Alloc, typename tuple_element<_Indx, - typename __make_tuple_types<_Tuple>::type>::type>(), __a,  + typename __make_tuple_types<_Tuple>::type>::type>(), __a,  _STD::forward<typename tuple_element<_Indx,  typename __make_tuple_types<_Tuple>::type>::type>(_STD::get<_Indx>(__t)))...  {} @@ -798,7 +798,7 @@  {  }   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    _LIBCPP_END_NAMESPACE_STD   
diff --git a/include/type_traits b/include/type_traits index f501d12..6daeae5 100644 --- a/include/type_traits +++ b/include/type_traits 
@@ -41,7 +41,7 @@  template <class T> struct is_union;  template <class T> struct is_class;  template <class T> struct is_function; -  +  // Secondary classification traits:  template <class T> struct is_reference;  template <class T> struct is_arithmetic; @@ -50,7 +50,7 @@  template <class T> struct is_scalar;  template <class T> struct is_object;  template <class T> struct is_compound; -  +  // Const-volatile properties and transformations:  template <class T> struct is_const;  template <class T> struct is_volatile; @@ -60,28 +60,28 @@  template <class T> struct add_const;  template <class T> struct add_volatile;  template <class T> struct add_cv; -  +  // Reference transformations:  template <class T> struct remove_reference;  template <class T> struct add_lvalue_reference;  template <class T> struct add_rvalue_reference; -  +  // Pointer transformations:  template <class T> struct remove_pointer;  template <class T> struct add_pointer; -  +  // Integral properties:  template <class T> struct is_signed;  template <class T> struct is_unsigned;  template <class T> struct make_signed;  template <class T> struct make_unsigned; -  +  // Array properties and transformations:  template <class T> struct rank;  template <class T, unsigned I = 0> struct extent;  template <class T> struct remove_extent;  template <class T> struct remove_all_extents; -  +  // Member introspection:  template <class T> struct is_pod;  template <class T> struct is_trivial; @@ -110,13 +110,13 @@  template <class T> struct has_nothrow_copy_assign;  template <class T> struct has_nothrow_move_assign;  template <class T> struct has_virtual_destructor; -  +  // Relationships between types:  template <class T, class U> struct is_same;  template <class Base, class Derived> struct is_base_of;  template <class From, class To> struct is_convertible;  template <class T> struct underlying_type; -  +  // Alignment properties and transformations:  template <class T> struct alignment_of;  template <size_t Len, size_t Align = most_stringent_alignment_requirement> @@ -206,7 +206,7 @@  #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS  template <> struct __is_integral<char16_t> : public true_type {};  template <> struct __is_integral<char32_t> : public true_type {}; -#endif +#endif // _LIBCPP_HAS_NO_UNICODE_CHARS  template <> struct __is_integral<short> : public true_type {};  template <> struct __is_integral<unsigned short> : public true_type {};  template <> struct __is_integral<int> : public true_type {}; @@ -262,12 +262,12 @@    template <class _Tp> struct is_union : public integral_constant<bool, __is_union(_Tp)> {};   -#else +#else // __GNUC__ >= 4 && __GNUC_MINOR__ >= 3    template <class _Tp> struct __libcpp_union : public false_type {};  template <class _Tp> struct is_union : public __libcpp_union<typename remove_cv<_Tp>::type> {};   -#endif +#endif // __GNUC__ >= 4 && __GNUC_MINOR__ >= 3    // is_class   @@ -421,7 +421,7 @@  template <> struct add_rvalue_reference<volatile void> {typedef volatile void type;};  template <> struct add_rvalue_reference<const volatile void> {typedef const volatile void type;};   -#endif +#endif // _LIBCPP_MOVE    // remove_pointer   @@ -566,7 +566,7 @@  template <class _T1> struct __is_convertible<_T1, const _T1&&, 1, 0> : true_type {};  template <class _T1> struct __is_convertible<_T1, volatile _T1&&, 1, 0> : true_type {};  template <class _T1> struct __is_convertible<_T1, const volatile _T1&&, 1, 0> : true_type {}; -#endif +#endif // _LIBCPP_MOVE    template <class _T1, class _T2> struct __is_convertible<_T1, _T2*, 1, 0>  : public integral_constant<bool, __is_convertible<typename remove_all_extents<_T1>::type*, _T2*>::value> {}; @@ -580,7 +580,6 @@  template <class _T1, class _T2> struct __is_convertible<_T1, _T2* const volatile, 1, 0>  : public integral_constant<bool, __is_convertible<typename remove_all_extents<_T1>::type*, _T2*const volatile>::value> {};   -  template <class _T1, class _T2> struct __is_convertible<_T1, _T2, 2, 0> : public false_type {};  #ifdef _LIBCPP_MOVE  template <class _T1> struct __is_convertible<_T1, _T1&&, 2, 0> : public true_type {}; @@ -888,7 +887,6 @@  (is_arithmetic<_A3>::value || is_void<_A3>::value)>  class __promote {};   -  template <class _A1, class _A2, class _A3>  class __promote<_A1, _A2, _A3, true>  { @@ -1074,7 +1072,6 @@  typedef typename common_type<typename common_type<_Tp, _Up>::type, V>::type type;  };   -  template <class _Tp>  struct common_type<_Tp, void, void>  { @@ -1089,16 +1086,16 @@  #ifdef _LIBCPP_MOVE  static _Tp&& __t();  static _Up&& __u(); -#else +#else // _LIBCPP_MOVE  static _Tp __t();  static _Up __u(); -#endif +#endif // _LIBCPP_MOVE  static bool __f();  public:  typedef decltype(__f() ? __t() : __u()) type;  };   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template <class ..._Tp> struct common_type;   @@ -1125,7 +1122,7 @@  typedef typename common_type<typename common_type<_Tp, _Up>::type, _Vp...>::type type;  };   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    // move   @@ -1275,13 +1272,13 @@  typename add_rvalue_reference<_Tp>::type  declval();   -#else +#else // _LIBCPP_MOVE    template <class _Tp>  typename add_lvalue_reference<_Tp>::type  declval();   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp>  struct decay @@ -1381,7 +1378,7 @@  {  };   -#endif +#endif // 0    // result_of   @@ -1397,7 +1394,7 @@  {  };   -#else +#else // _LIBCPP_HAS_NO_VARIADICS    template <class _Fn>  class __result_of<_Fn(), true> @@ -1475,7 +1472,7 @@  {  };   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    #ifndef _LIBCPP_HAS_NO_ADVANCED_SFINAE   @@ -1516,7 +1513,7 @@  // Scalars are default constructible, references are not    template <class _Tp> -struct __is_constructible<true, _Tp>  +struct __is_constructible<true, _Tp>  : public is_scalar<_Tp>  {};   @@ -1531,7 +1528,7 @@  };    template <class _Tp, class _A0> -struct __is_constructible<true, _Tp, _A0>  +struct __is_constructible<true, _Tp, _A0>  : public common_type  <  decltype(__is_constructible_ref<_Tp>::__(declval<_A0>())) @@ -1541,7 +1538,7 @@  // Scalars and references are not constructible from multiple args.    template <class _Tp, class _A0, class ..._Args> -struct __is_constructible<true, _Tp, _A0, _Args...>  +struct __is_constructible<true, _Tp, _A0, _Args...>  : public false_type  {};   @@ -1602,7 +1599,7 @@  : public false_type  {};   -#endif +#endif // _LIBCPP_HAS_NO_ADVANCED_SFINAE    template <class _Tp> struct __is_zero_default_constructible  : public integral_constant<bool, is_scalar<_Tp>::value || is_empty<_Tp>::value> {}; 
diff --git a/include/typeinfo b/include/typeinfo index 8762de7..f1334ca 100644 --- a/include/typeinfo +++ b/include/typeinfo 
@@ -21,14 +21,14 @@  {  public:  virtual ~type_info(); -  +  bool operator==(const type_info& rhs) const;  bool operator!=(const type_info& rhs) const; -  +  bool before(const type_info& rhs) const;  size_t hash_code() const throw();  const char* name() const; -  +  type_info(const type_info& rhs) = delete;  type_info& operator=(const type_info& rhs) = delete;  }; @@ -63,11 +63,10 @@    #pragma GCC system_header   -  namespace std // purposefully not using versioning namespace  {   -class _LIBCPP_EXCEPTION_ABI type_info  +class _LIBCPP_EXCEPTION_ABI type_info  {  type_info& operator=(const type_info&);  type_info(const type_info&); @@ -95,7 +94,7 @@  };    class _LIBCPP_EXCEPTION_ABI bad_cast - : public exception  + : public exception  {  public:  bad_cast() throw(); @@ -104,7 +103,7 @@  };    class _LIBCPP_EXCEPTION_ABI bad_typeid - : public exception  + : public exception  {  public:  bad_typeid() throw(); @@ -112,9 +111,6 @@  virtual const char* what() const throw();  };   -  } // std   - -  #endif // __LIBCPP_TYPEINFO 
diff --git a/include/unordered_map b/include/unordered_map index 4cc0f8a..7513c24 100644 --- a/include/unordered_map +++ b/include/unordered_map 
@@ -325,7 +325,7 @@  {return static_cast<const _Pred&>(*this)(__x, __y.first);}  bool operator()(const _Tp& __x, const typename _Tp::first_type& __y) const  {return static_cast<const _Pred&>(*this)(__x.first, __y);} - bool operator()(const typename _Tp::first_type& __x,  + bool operator()(const typename _Tp::first_type& __x,  const typename _Tp::first_type& __y) const  {return static_cast<const _Pred&>(*this)(__x, __y);}  }; @@ -383,7 +383,7 @@  {  __x.__value_constructed = false;  } -#else +#else // _LIBCPP_MOVE  __hash_map_node_destructor(const __hash_node_destructor<allocator_type>& __x)  : __na_(__x.__na_),  __first_constructed(__x.__value_constructed), @@ -391,7 +391,7 @@  {  const_cast<bool&>(__x.__value_constructed) = false;  } -#endif +#endif // _LIBCPP_MOVE    void operator()(pointer __p)  { @@ -576,7 +576,7 @@  #ifdef _LIBCPP_MOVE  unordered_map(unordered_map&& __u);  unordered_map(unordered_map&& __u, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE  unordered_map(initializer_list<value_type> __il);  unordered_map(initializer_list<value_type> __il, size_type __n,  const hasher& __hf = hasher(), const key_equal& __eql = key_equal()); @@ -630,7 +630,7 @@  iterator emplace_hint(const_iterator, _A0&& __a0, _Args&&... __args)  {return emplace(_STD::forward<_A0>(__a0),  _STD::forward<_Args>(__args)...).first;} -#endif +#endif // _LIBCPP_MOVE  pair<iterator, bool> insert(const value_type& __x)  {return __table_.__insert_unique(__x);}  #ifdef _LIBCPP_MOVE @@ -638,7 +638,7 @@  class = typename enable_if<is_convertible<_P, value_type>::value>::type>  pair<iterator, bool> insert(_P&& __x)  {return __table_.__insert_unique(_STD::forward<_P>(__x));} -#endif +#endif // _LIBCPP_MOVE  iterator insert(const_iterator, const value_type& __x)  {return insert(__x).first;}  #ifdef _LIBCPP_MOVE @@ -646,7 +646,7 @@  class = typename enable_if<is_convertible<_P, value_type>::value>::type>  iterator insert(const_iterator, _P&& __x)  {return insert(_STD::forward<_P>(__x)).first;} -#endif +#endif // _LIBCPP_MOVE  template <class _InputIterator>  void insert(_InputIterator __first, _InputIterator __last);  void insert(initializer_list<value_type> __il) @@ -709,7 +709,7 @@  template <class _A0,  class = typename enable_if<is_convertible<_A0, value_type>::value>::type>  __node_holder __construct_node(_A0&& __a0); -#else +#else // _LIBCPP_MOVE  __node_holder __construct_node(const key_type& __k);  #endif  }; @@ -812,7 +812,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_map( @@ -852,7 +852,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  inline @@ -916,7 +916,7 @@  return __r;  }   -#else +#else // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  typename unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::__node_holder @@ -931,7 +931,7 @@  return _STD::move(__h);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  template <class _InputIterator> @@ -972,7 +972,7 @@  return __r.first->second;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  _Tp& @@ -982,7 +982,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__i == end())  throw out_of_range("unordered_map::at: key not found"); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __i->second;  }   @@ -994,7 +994,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  if (__i == end())  throw out_of_range("unordered_map::at: key not found"); -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  return __i->second;  }   @@ -1107,7 +1107,7 @@  #ifdef _LIBCPP_MOVE  unordered_multimap(unordered_multimap&& __u);  unordered_multimap(unordered_multimap&& __u, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE  unordered_multimap(initializer_list<value_type> __il);  unordered_multimap(initializer_list<value_type> __il, size_type __n,  const hasher& __hf = hasher(), @@ -1160,14 +1160,14 @@  template <class _A0, class... _Args,  class = typename enable_if<is_convertible<_A0, key_type>::value>::type>  iterator emplace_hint(const_iterator __p, _A0&& __a0, _Args&&... __args); -#endif +#endif // _LIBCPP_MOVE  iterator insert(const value_type& __x) {return __table_.__insert_multi(__x);}  #ifdef _LIBCPP_MOVE  template <class _P,  class = typename enable_if<is_convertible<_P, value_type>::value>::type>  iterator insert(_P&& __x)  {return __table_.__insert_multi(_STD::forward<_P>(__x));} -#endif +#endif // _LIBCPP_MOVE  iterator insert(const_iterator __p, const value_type& __x)  {return __table_.__insert_multi(__p.__i_, __x);}  #ifdef _LIBCPP_MOVE @@ -1175,7 +1175,7 @@  class = typename enable_if<is_convertible<_P, value_type>::value>::type>  iterator insert(const_iterator __p, _P&& __x)  {return __table_.__insert_multi(__p.__i_, _STD::forward<_P>(__x));} -#endif +#endif // _LIBCPP_MOVE  template <class _InputIterator>  void insert(_InputIterator __first, _InputIterator __last);  void insert(initializer_list<value_type> __il) @@ -1230,7 +1230,7 @@  template <class _A0,  class = typename enable_if<is_convertible<_A0, value_type>::value>::type>  __node_holder __construct_node(_A0&& __a0); -#endif +#endif // _LIBCPP_MOVE  };    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc> @@ -1280,7 +1280,6 @@  insert(__first, __last);  }   -  template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  inline  unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_multimap( @@ -1334,7 +1333,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_multimap( @@ -1374,7 +1373,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  inline @@ -1452,7 +1451,7 @@  return __r;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>  template <class _InputIterator> 
diff --git a/include/unordered_set b/include/unordered_set index 5f7f28e..0e82775 100644 --- a/include/unordered_set +++ b/include/unordered_set 
@@ -320,7 +320,7 @@  #ifdef _LIBCPP_MOVE  unordered_set(unordered_set&& __u);  unordered_set(unordered_set&& __u, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE  unordered_set(initializer_list<value_type> __il);  unordered_set(initializer_list<value_type> __il, size_type __n,  const hasher& __hf = hasher(), @@ -356,19 +356,19 @@  template <class... _Args>  iterator emplace_hint(const_iterator, _Args&&... __args)  {return __table_.__emplace_unique(_STD::forward<_Args>(__args)...).first;} -#endif +#endif // _LIBCPP_MOVE  pair<iterator, bool> insert(const value_type& __x)  {return __table_.__insert_unique(__x);}  #ifdef _LIBCPP_MOVE  pair<iterator, bool> insert(value_type&& __x)  {return __table_.__insert_unique(_STD::move(__x));} -#endif +#endif // _LIBCPP_MOVE  iterator insert(const_iterator, const value_type& __x)  {return insert(__x).first;}  #ifdef _LIBCPP_MOVE  iterator insert(const_iterator, value_type&& __x)  {return insert(_STD::move(__x)).first;} -#endif +#endif // _LIBCPP_MOVE  template <class _InputIterator>  void insert(_InputIterator __first, _InputIterator __last);  void insert(initializer_list<value_type> __il) @@ -508,7 +508,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Value, class _Hash, class _Pred, class _Alloc>  unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set( @@ -548,7 +548,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Value, class _Hash, class _Pred, class _Alloc>  inline @@ -659,7 +659,7 @@  #ifdef _LIBCPP_MOVE  unordered_multiset(unordered_multiset&& __u);  unordered_multiset(unordered_multiset&& __u, const allocator_type& __a); -#endif +#endif // _LIBCPP_MOVE  unordered_multiset(initializer_list<value_type> __il);  unordered_multiset(initializer_list<value_type> __il, size_type __n,  const hasher& __hf = hasher(), @@ -695,7 +695,7 @@  template <class... _Args>  iterator emplace_hint(const_iterator __p, _Args&&... __args)  {return __table_.__emplace_hint_multi(__p, _STD::forward<_Args>(__args)...);} -#endif +#endif // _LIBCPP_MOVE  iterator insert(const value_type& __x) {return __table_.__insert_multi(__x);}  #ifdef _LIBCPP_MOVE  iterator insert(value_type&& __x) {return __table_.__insert_multi(_STD::move(__x));} @@ -705,7 +705,7 @@  #ifdef _LIBCPP_MOVE  iterator insert(const_iterator __p, value_type&& __x)  {return __table_.__insert_multi(__p, _STD::move(__x));} -#endif +#endif // _LIBCPP_MOVE  template <class _InputIterator>  void insert(_InputIterator __first, _InputIterator __last);  void insert(initializer_list<value_type> __il) @@ -846,7 +846,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Value, class _Hash, class _Pred, class _Alloc>  unordered_multiset<_Value, _Hash, _Pred, _Alloc>::unordered_multiset( @@ -887,7 +887,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Value, class _Hash, class _Pred, class _Alloc>  inline 
diff --git a/include/utility b/include/utility index 82bfaef..0aa66e6 100644 --- a/include/utility +++ b/include/utility 
@@ -178,7 +178,7 @@  const _Tp&,  _Tp&&  >::type -#else +#else // _LIBCPP_MOVE  const _Tp&  #endif  move_if_noexcept(_Tp& __x) @@ -233,7 +233,7 @@  template <class... _Args1, class... _Args2, size_t... _I1, size_t... _I2>  pair(piecewise_construct_t __pc, tuple<_Args1...> __first_args,  tuple<_Args2...> __second_args) - : pair(__pc, __first_args, __second_args,  + : pair(__pc, __first_args, __second_args,  typename __make_tuple_indices<sizeof...(_Args1)>::type(),  typename __make_tuple_indices<sizeof...(_Args2) >::type())  {} @@ -251,22 +251,22 @@  return *this;  }   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS   -#else +#else // _LIBCPP_MOVE  template<class _U1, class _U2>  _LIBCPP_INLINE_VISIBILITY pair(const pair<_U1, _U2>& __p)  : first(__p.first), second(__p.second) {} -#endif +#endif // _LIBCPP_MOVE  void _LIBCPP_INLINE_VISIBILITY swap(pair& __p) {_STD::swap(*this, __p);}  private: -  +  #ifndef _LIBCPP_HAS_NO_VARIADICS  template <class... _Args1, class... _Args2, size_t... _I1, size_t... _I2>  pair(piecewise_construct_t,  tuple<_Args1...>& __first_args, tuple<_Args2...>& __second_args,  __tuple_indices<_I1...>, __tuple_indices<_I2...>); -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS  };    template <class _T1, class _T2> @@ -357,7 +357,7 @@  (_STD::forward<_T1>(__t1), _STD::forward<_T2>(__t2));  }   -#else +#else // _LIBCPP_MOVE    template <class _T1, class _T2>  inline _LIBCPP_INLINE_VISIBILITY @@ -367,7 +367,7 @@  return pair<_T1, _T2>(__x, __y);  }   -#endif +#endif // _LIBCPP_MOVE    #ifndef _LIBCPP_HAS_NO_VARIADICS   @@ -455,7 +455,7 @@  return __get_pair<_Ip>::get(__p);  }   -#endif +#endif // _LIBCPP_HAS_NO_VARIADICS    _LIBCPP_END_NAMESPACE_STD   
diff --git a/include/valarray b/include/valarray index dbfeeb2..1fcee5c 100644 --- a/include/valarray +++ b/include/valarray 
@@ -798,7 +798,7 @@  #ifdef _LIBCPP_MOVE  valarray(valarray&& __v);  valarray(initializer_list<value_type> __il); -#endif +#endif // _LIBCPP_MOVE  valarray(const slice_array<value_type>& __sa);  valarray(const gslice_array<value_type>& __ga);  valarray(const mask_array<value_type>& __ma); @@ -810,7 +810,7 @@  #ifdef _LIBCPP_MOVE  valarray& operator=(valarray&& __v);  valarray& operator=(initializer_list<value_type>); -#endif +#endif // _LIBCPP_MOVE  valarray& operator=(const value_type& __x);  valarray& operator=(const slice_array<value_type>& __sa);  valarray& operator=(const gslice_array<value_type>& __ga); @@ -832,19 +832,19 @@  #ifdef _LIBCPP_MOVE  __val_expr<__indirect_expr<const valarray&> > operator[](gslice&& __gs) const;  gslice_array<value_type> operator[](gslice&& __gs); -#endif +#endif // _LIBCPP_MOVE  __val_expr<__mask_expr<const valarray&> > operator[](const valarray<bool>& __vb) const;  mask_array<value_type> operator[](const valarray<bool>& __vb);  #ifdef _LIBCPP_MOVE  __val_expr<__mask_expr<const valarray&> > operator[](valarray<bool>&& __vb) const;  mask_array<value_type> operator[](valarray<bool>&& __vb); -#endif +#endif // _LIBCPP_MOVE  __val_expr<__indirect_expr<const valarray&> > operator[](const valarray<size_t>& __vs) const;  indirect_array<value_type> operator[](const valarray<size_t>& __vs);  #ifdef _LIBCPP_MOVE  __val_expr<__indirect_expr<const valarray&> > operator[](valarray<size_t>&& __vs) const;  indirect_array<value_type> operator[](valarray<size_t>&& __vs); -#endif +#endif // _LIBCPP_MOVE    // unary operators:  valarray operator+() const; @@ -974,17 +974,17 @@  friend  _Up*  begin(valarray<_Up>& __v); -  +  template <class _Up>  friend  const _Up*  begin(const valarray<_Up>& __v); -  +  template <class _Up>  friend  _Up*  end(valarray<_Up>& __v); -  +  template <class _Up>  friend  const _Up* @@ -1383,7 +1383,7 @@  valarray<size_t> __size_;  valarray<size_t> __stride_;  valarray<size_t> __1d_; -  +  public:  _LIBCPP_ALWAYS_INLINE  gslice() {} @@ -1418,7 +1418,7 @@  __stride_(move(__stride))  {__init(__start);}   -#endif +#endif // _LIBCPP_MOVE    // gslice(const gslice&) = default;  // gslice(gslice&&) = default; @@ -1567,7 +1567,7 @@  __1d_(move(__gs.__1d_))  {}   -#endif +#endif // _LIBCPP_MOVE    template <class> friend class valarray;  }; @@ -2240,7 +2240,7 @@  __1d_(move(__ia))  {}   -#endif +#endif // _LIBCPP_MOVE    template <class> friend class valarray;  }; @@ -2457,7 +2457,7 @@  __1d_(move(__ia))  {}   -#endif +#endif // _LIBCPP_MOVE    public:  _LIBCPP_ALWAYS_INLINE @@ -2652,7 +2652,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __n; ++__end_, ++__p, --__n)  ::new (__end_) value_type(*__p);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2662,7 +2662,7 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -2677,7 +2677,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (value_type* __p = __v.__begin_; __p != __v.__end_; ++__end_, ++__p)  ::new (__end_) value_type(*__p);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2687,7 +2687,7 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -2714,7 +2714,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (const value_type* __p = __il.begin(); __n; ++__end_, ++__p, --__n)  ::new (__end_) value_type(*__p);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2724,11 +2724,11 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp>  valarray<_Tp>::valarray(const slice_array<value_type>& __sa) @@ -2742,7 +2742,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (const value_type* __p = __sa.__vp_; __n; ++__end_, __p += __sa.__stride_, --__n)  ::new (__end_) value_type(*__p);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2752,7 +2752,7 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -2768,7 +2768,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef const size_t* _Ip;  const value_type* __s = __ga.__vp_;  for (_Ip __i = __ga.__1d_.__begin_, __e = __ga.__1d_.__end_; @@ -2781,7 +2781,7 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -2797,7 +2797,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef const size_t* _Ip;  const value_type* __s = __ma.__vp_;  for (_Ip __i = __ma.__1d_.__begin_, __e = __ma.__1d_.__end_; @@ -2810,7 +2810,7 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -2826,7 +2826,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  typedef const size_t* _Ip;  const value_type* __s = __ia.__vp_;  for (_Ip __i = __ia.__1d_.__begin_, __e = __ia.__1d_.__end_; @@ -2839,7 +2839,7 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -2889,7 +2889,7 @@  return *this;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp>  inline _LIBCPP_ALWAYS_INLINE @@ -3004,7 +3004,7 @@  return gslice_array<value_type>(move(__gs), *this);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp>  inline _LIBCPP_ALWAYS_INLINE @@ -3040,7 +3040,7 @@  return mask_array<value_type>(move(__vb), *this);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp>  inline _LIBCPP_ALWAYS_INLINE @@ -3076,7 +3076,7 @@  return indirect_array<value_type>(move(__vs), *this);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp>  valarray<_Tp> @@ -3559,7 +3559,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __n; --__n, ++__end_)  ::new (__end_) value_type(__x);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -3569,7 +3569,7 @@  resize(0);  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   
diff --git a/include/vector b/include/vector index e97e939..9e792c8 100644 --- a/include/vector +++ b/include/vector 
@@ -17,11 +17,11 @@  namespace std  {   -template <class T, class Allocator = allocator<T> >  +template <class T, class Allocator = allocator<T> >  class vector -{  -public:  - typedef T value_type;  +{ +public: + typedef T value_type;  typedef Allocator allocator_type;  typedef typename allocator_type::reference reference;  typedef typename allocator_type::const_reference const_reference; @@ -114,13 +114,13 @@  void swap(vector&);    bool __invariants() const; -};  +};   -template <class Allocator = allocator<T> >  +template <class Allocator = allocator<T> >  class vector<bool, Allocator> -{  -public:  - typedef bool value_type;  +{ +public: + typedef bool value_type;  typedef Allocator allocator_type;  typedef implementation-defined iterator;  typedef implementation-defined const_iterator; @@ -222,7 +222,7 @@  void flip();    bool __invariants() const; -};  +};    template <class Allocator> struct hash<std::vector<bool, Allocator>>;   @@ -297,7 +297,7 @@  : protected __vector_base_common<true>  {  protected: - typedef _Tp value_type;  + typedef _Tp value_type;  typedef _Allocator allocator_type;  typedef allocator_traits<allocator_type> __alloc_traits;  typedef value_type& reference; @@ -424,9 +424,9 @@  {  private:  typedef __vector_base<_Tp, _Allocator> __base; -public:  +public:  typedef vector __self; - typedef _Tp value_type;  + typedef _Tp value_type;  typedef _Allocator allocator_type;  typedef typename __base::__alloc_traits __alloc_traits;  typedef typename __base::reference reference; @@ -449,10 +449,10 @@  #elif defined(_LIBCPP_RAW_ITERATORS)  typedef pointer iterator;  typedef const_pointer const_iterator; -#else +#else // defined(_LIBCPP_RAW_ITERATORS)  typedef __wrap_iter<pointer> iterator;  typedef __wrap_iter<const_pointer> const_iterator; -#endif +#endif // defined(_LIBCPP_RAW_ITERATORS)  typedef _STD::reverse_iterator<iterator> reverse_iterator;  typedef _STD::reverse_iterator<const_iterator> const_reverse_iterator;   @@ -488,7 +488,7 @@  vector(vector&& __x);  vector(vector&& __x, const allocator_type& __a);  vector& operator=(vector&& __x); -#endif +#endif // _LIBCPP_MOVE  vector& operator=(initializer_list<value_type> __il)  {assign(__il.begin(), __il.end()); return *this;}   @@ -556,7 +556,7 @@  void push_back(value_type&& __x);  template <class... _Args>  void emplace_back(_Args&&... __args); -#endif +#endif // _LIBCPP_MOVE  void pop_back();    iterator insert(const_iterator __position, const_reference __x); @@ -564,7 +564,7 @@  iterator insert(const_iterator __position, value_type&& __x);  template <class... _Args>  iterator emplace(const_iterator __position, _Args&&... __args); -#endif +#endif // _LIBCPP_MOVE  iterator insert(const_iterator __position, size_type __n, const_reference __x);  template <class _InputIterator>  typename enable_if @@ -1043,7 +1043,7 @@  __c.__begin_ = __c.__end_ = __c.__end_cap() = nullptr;  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline @@ -1128,7 +1128,7 @@  }  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::iterator  vector<_Tp, _Allocator>::__make_iter(pointer __p) @@ -1140,7 +1140,7 @@  #endif  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::const_iterator  vector<_Tp, _Allocator>::__make_iter(const_pointer __p) const @@ -1152,7 +1152,7 @@  #endif  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::iterator  vector<_Tp, _Allocator>::begin() @@ -1160,7 +1160,7 @@  return __make_iter(this->__begin_);  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::const_iterator  vector<_Tp, _Allocator>::begin() const @@ -1168,7 +1168,7 @@  return __make_iter(this->__begin_);  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::iterator  vector<_Tp, _Allocator>::end() @@ -1176,7 +1176,7 @@  return __make_iter(this->__end_);  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::const_iterator  vector<_Tp, _Allocator>::end() const @@ -1184,7 +1184,7 @@  return __make_iter(this->__end_);  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::reference  vector<_Tp, _Allocator>::operator[](size_type __n) @@ -1195,7 +1195,7 @@  return this->__begin_[__n];  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline  typename vector<_Tp, _Allocator>::const_reference  vector<_Tp, _Allocator>::operator[](size_type __n) const @@ -1206,7 +1206,7 @@  return this->__begin_[__n];  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  typename vector<_Tp, _Allocator>::reference  vector<_Tp, _Allocator>::at(size_type __n)  { @@ -1215,7 +1215,7 @@  return this->__begin_[__n];  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  typename vector<_Tp, _Allocator>::const_reference  vector<_Tp, _Allocator>::at(size_type __n) const  { @@ -1248,7 +1248,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  allocator_type& __a = this->__alloc();  __split_buffer<value_type, allocator_type&> __v(size(), 0, __a);  __v.__construct_at_end(move_iterator<pointer>(this->__begin_), @@ -1260,7 +1260,7 @@  catch (...)  {  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -1326,7 +1326,7 @@  }  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  _LIBCPP_INLINE_VISIBILITY inline @@ -1465,7 +1465,7 @@  return __make_iter(__p);  }   -#endif +#endif // _LIBCPP_MOVE    template <class _Tp, class _Allocator>  typename vector<_Tp, _Allocator>::iterator @@ -1530,7 +1530,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __v.__construct_at_end(__first, __last);  difference_type __old_size = __old_last - this->__begin_;  difference_type __old_p = __p - this->__begin_; @@ -1544,7 +1544,7 @@  erase(__make_iter(__old_last), end());  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  __p = _STD::rotate(__p, __old_last, this->__end_);  insert(__make_iter(__p), move_iterator<iterator>(__v.begin()), @@ -1628,10 +1628,10 @@  #ifdef _LIBCPP_DEBUG  iterator::swap(this, &__x);  const_iterator::swap(this, &__x); -#endif +#endif // _LIBCPP_DEBUG  }   -template <class _Tp, class _Allocator>  +template <class _Tp, class _Allocator>  bool  vector<_Tp, _Allocator>::__invariants() const  { @@ -1662,7 +1662,7 @@  #ifdef _LIBCPP_DEBUG  iterator::__remove_all(this);  const_iterator::__remove_all(this); -#endif +#endif // _LIBCPP_DEBUG  }    // vector<bool> @@ -1677,7 +1677,7 @@  {  public:  typedef vector __self; - typedef bool value_type;  + typedef bool value_type;  typedef _Allocator allocator_type;  typedef allocator_traits<allocator_type> __alloc_traits;  typedef __bit_reference<vector> reference; @@ -1697,10 +1697,10 @@    _LIBCPP_INLINE_VISIBILITY iterator*& __get_iterator_list(iterator*) {return __iterator_list_.first;}  _LIBCPP_INLINE_VISIBILITY const_iterator*& __get_iterator_list(const_iterator*) {return __iterator_list_.second;} -#else +#else // _LIBCPP_DEBUG  typedef pointer iterator;  typedef const_pointer const_iterator; -#endif +#endif // _LIBCPP_DEBUG  typedef _STD::reverse_iterator<iterator> reverse_iterator;  typedef _STD::reverse_iterator<const_iterator> const_reverse_iterator;   @@ -1765,7 +1765,7 @@  vector(vector&& __v);  vector(vector&& __v, const allocator_type& __a);  vector& operator=(vector&& __v); -#endif +#endif // _LIBCPP_MOVE  vector& operator=(initializer_list<value_type> __il)  {assign(__il.begin(), __il.end()); return *this;}   @@ -1887,14 +1887,14 @@  {return const_iterator(this, const_pointer(__begin_ + __pos / __bits_per_word, static_cast<unsigned>(__pos % __bits_per_word)));}  _LIBCPP_INLINE_VISIBILITY iterator __const_iterator_cast(const_iterator __p)  {return iterator(this, pointer(const_cast<__storage_pointer>(__p.base().__seg_), __p.base().__ctz_));} -#else +#else // _LIBCPP_DEBUG  _LIBCPP_INLINE_VISIBILITY iterator __make_iter(size_type __pos)  {return iterator(__begin_ + __pos / __bits_per_word, static_cast<unsigned>(__pos % __bits_per_word));}  _LIBCPP_INLINE_VISIBILITY const_iterator __make_iter(size_type __pos) const  {return const_iterator(__begin_ + __pos / __bits_per_word, static_cast<unsigned>(__pos % __bits_per_word));}  _LIBCPP_INLINE_VISIBILITY iterator __const_iterator_cast(const_iterator __p)  {return iterator(const_cast<__storage_pointer>(__p.__seg_), __p.__ctz_);} -#endif +#endif // _LIBCPP_DEBUG    void __copy_assign_alloc(const vector& __v)  {__copy_assign_alloc(__v, integral_constant<bool, @@ -1954,7 +1954,7 @@  #ifdef _LIBCPP_DEBUG  iterator::__remove_all(this);  const_iterator::__remove_all(this); -#endif +#endif // _LIBCPP_DEBUG  }    // Allocate space for __n objects @@ -2112,7 +2112,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __first != __last; ++__first)  push_back(*__first);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2124,7 +2124,7 @@  __invalidate_all_iterators();  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    template <class _Allocator> @@ -2139,7 +2139,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  for (; __first != __last; ++__first)  push_back(*__first);  #ifndef _LIBCPP_NO_EXCEPTIONS @@ -2151,7 +2151,7 @@  __invalidate_all_iterators();  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }    template <class _Allocator> @@ -2337,7 +2337,7 @@  __c.__begin_ = nullptr;  __c.__cap() = __c.__size_ = 0;  } -#endif +#endif // _LIBCPP_MOVE    template <class _Allocator>  void @@ -2420,14 +2420,14 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  vector(*this, allocator_type(__alloc())).swap(*this);  #ifndef _LIBCPP_NO_EXCEPTIONS  }  catch (...)  {  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  }   @@ -2534,7 +2534,7 @@  #ifndef _LIBCPP_NO_EXCEPTIONS  try  { -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  __v.assign(__first, __last);  difference_type __old_size = static_cast<difference_type>(__old_end - begin());  difference_type __old_p = __p - begin(); @@ -2548,7 +2548,7 @@  erase(__old_end, end());  throw;  } -#endif +#endif // _LIBCPP_NO_EXCEPTIONS  }  __p = _STD::rotate(__p, __old_end, end());  insert(__p, __v.begin(), __v.end()); @@ -2620,10 +2620,10 @@  #ifdef _LIBCPP_DEBUG  iterator::swap(this, &__x);  const_iterator::swap(this, &__x); -#endif +#endif // _LIBCPP_DEBUG  }   -template <class _Allocator>  +template <class _Allocator>  void  vector<bool, _Allocator>::resize(size_type __sz, value_type __x)  { @@ -2652,7 +2652,7 @@  __size_ = __sz;  }   -template <class _Allocator>  +template <class _Allocator>  void  vector<bool, _Allocator>::flip()  { @@ -2671,7 +2671,7 @@  }  }   -template <class _Allocator>  +template <class _Allocator>  bool  vector<bool, _Allocator>::__invariants() const  { @@ -2690,7 +2690,7 @@  return true;  }   -template <class _Allocator>  +template <class _Allocator>  size_t  vector<bool, _Allocator>::__hash_code() const  {